annotate plugins/logger/logger.md @ 479:298cae7487dc

Irccd: use boost::filesystem (fs::mkdir), #594
author David Demelier <markand@malikania.fr>
date Thu, 16 Feb 2017 12:52:23 +0100
parents 9bc2da03dbe1
children 3d0dbc0bee7d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 ---
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 title: "Logger plugin"
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 header: "Logger plugin"
275
c143682678b9 CMake: improve documentation related to plugins
David Demelier <markand@malikania.fr>
parents: 144
diff changeset
4 guide: yes
0
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 ---
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
6
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 The plugin **logger** may be used to log everything you want. It supports the following events:
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
8
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 - Channel mode,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 - Channel notice,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 - Join,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 - Kick,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 - Me,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 - Message,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 - Mode,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 - Notice,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 - Part,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
18 - Query,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 - Topic.
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
20
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 ## Installation
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
22
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
23 The plugin **logger** is distributed with irccd. To enable it add the following to your `plugins` section:
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
24
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 ````ini
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
26 [plugins]
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 logger = ""
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 ````
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
29
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 ## Usage
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
31
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 There is nothing to do, except configuring it.
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
33
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 ## Configuration
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
35
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
36 The following options are available under the `[plugin.logger]` section:
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
37
144
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
38 - **path**: (string) the path to the file where to store logs,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
39
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
40 **Deprecated in irccd 2.1.0:**
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
41
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
42 - **format-cmode**: Use `[format.logger] cmode` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
43 - **format-cnotice**: Use `[format.logger] cnotice` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
44 - **format-join**: Use `[format.logger] join` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
45 - **format-kick**: Use `[format.logger] kick` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
46 - **format-me**: Use `[format.logger] me` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
47 - **format-message**: Use `[format.logger] message` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
48 - **format-mode**: Use `[format.logger] mode` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
49 - **format-notice**: Use `[format.logger] notice` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
50 - **format-part**: Use `[format.logger] part` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
51 - **format-query**: Use `[format.logger] query` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
52 - **format-topic**: Use `[format.logger] topic` instead,
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
53
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
54 ## Formats
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
55
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
56 The **logger** plugin supports the following formats in `[format.logger]` section:
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
57
0
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
58 - **cmode**: (string) format for channel mode change,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
59 - **cnotice**: (string) format for channel notices,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
60 - **join**: (string) format when someone joins a channel,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
61 - **kick**: (string) format when someone has been kicked,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
62 - **me**: (string) format for emote actions,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
63 - **message**: (string) format for channel messages,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
64 - **mode**: (string) format for user mode change,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
65 - **notice**: (string) format on private notices,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
66 - **part**: (string) format when someone leaves a channel,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
67 - **query**: (string) format on private messages,
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
68 - **topic**: (string) format when a topic is changed.
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
69
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
70 ### Keywords supported
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
71
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
72 The following keywords are supported:
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
73
144
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
74 | Format | Keywords | Notes |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
75 |-------------|-----------------------------------|---------------------------------|
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
76 | (any) | nickname, origin, server, source | source is the channel or nick |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
77 | **cmode** | arg, channel, mode, | the mode and its arguments |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
78 | **cnotice** | channel, message | the message notice |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
79 | **join** | channel | |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
80 | **kick** | channel, reason, target | |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
81 | **me** | channel, message | message is the emote action |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
82 | **message** | channel, message | |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
83 | **mode** | arg, mode | the mode and its arguments |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
84 | **notice** | message | the notice message |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
85 | **part** | channel, reason | |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
86 | **query** | message | |
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
87 | **topic** | channel, topic | |
0
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
88
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
89 The **source** keyword is specially designed to use a generic path for the path parameter.
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
90
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
91 Example:
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
92
32
b5906772bac0 Plugin logger:
David Demelier <markand@malikania.fr>
parents: 11
diff changeset
93 <div class="panel panel-info">
b5906772bac0 Plugin logger:
David Demelier <markand@malikania.fr>
parents: 11
diff changeset
94 <div class="panel-heading">~/.config/irccd/irccd.conf</div>
b5906772bac0 Plugin logger:
David Demelier <markand@malikania.fr>
parents: 11
diff changeset
95 <div class="panel-body">
0
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
96 ````ini
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
97 [plugin.logger]
144
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
98 path = "/var/log/irccd/#{server}/%y/%m/%d/#{source}.txt"
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
99
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
100 [format.logger]
5ed0c78a6785 Plugin logger: use new format section, #410
David Demelier <markand@malikania.fr>
parents: 46
diff changeset
101 join = "user #{nickname} joined #{channel}"
0
1158cffe5a5e Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
102 ````
32
b5906772bac0 Plugin logger:
David Demelier <markand@malikania.fr>
parents: 11
diff changeset
103 </div>
b5906772bac0 Plugin logger:
David Demelier <markand@malikania.fr>
parents: 11
diff changeset
104 </div>