]> arthur.barton.de Git - netdata.git/blob - conf.d/python.d/web_log.conf
6a8e6480528695a6f5e8916d956a791213c51d60
[netdata.git] / conf.d / python.d / web_log.conf
1 # netdata python.d.plugin configuration for web log
2 #
3 # This file is in YaML format. Generally the format is:
4 #
5 # name: value
6 #
7 # There are 2 sections:
8 #  - global variables
9 #  - one or more JOBS
10 #
11 # JOBS allow you to collect values from multiple sources.
12 # Each source will have its own set of charts.
13 #
14 # JOB parameters have to be indented (using spaces only, example below).
15
16 # ----------------------------------------------------------------------
17 # Global Variables
18 # These variables set the defaults for all JOBs, however each JOB
19 # may define its own, overriding the defaults.
20
21 # update_every sets the default data collection frequency.
22 # If unset, the python.d.plugin default is used.
23 # update_every: 1
24
25 # priority controls the order of charts at the netdata dashboard.
26 # Lower numbers move the charts towards the top of the page.
27 # If unset, the default for python.d.plugin is used.
28 # priority: 60000
29
30 # retries sets the number of retries to be made in case of failures.
31 # If unset, the default for python.d.plugin is used.
32 # Attempts to restore the service are made once every update_every
33 # and only if the module has collected values in the past.
34 # retries: 5
35
36 # ----------------------------------------------------------------------
37 # JOBS (data collection sources)
38 #
39 # The default JOBS share the same *name*. JOBS with the same name
40 # are mutually exclusive. Only one of them will be allowed running at
41 # any time. This allows autodetection to try several alternatives and
42 # pick the one that works.
43 #
44 # Any number of jobs is supported.
45
46 # ----------------------------------------------------------------------
47 # PLUGIN CONFIGURATION
48 #
49 # All python.d.plugin JOBS (for all its modules) support a set of
50 # predefined parameters. These are:
51 #
52 # job_name:
53 #     name: myname     # the JOB's name as it will appear at the
54 #                      # dashboard (by default is the job_name)
55 #                      # JOBs sharing a name are mutually exclusive
56 #     update_every: 1  # the JOB's data collection frequency
57 #     priority: 60000  # the JOB's order on the dashboard
58 #     retries: 5       # the JOB's number of restoration attempts
59 #
60 # Additionally to the above, web_log also supports the following:
61 #
62 #     path: 'PATH'                        # the path to web server log file
63 #     detailed_response_codes: yes/no     # Default: yes. Additional chart where response codes are not grouped
64 #     all_time : yes/no                   # Default: yes. All time unique client IPs chart (50000 addresses ~ 400KB)
65 #     categories:                         # requests per url chart configuration
66 #          cacti: 'cacti.*'               # name(dimension): REGEX to match
67 #          observium: 'observium.*'       # name(dimension): REGEX to match
68 #          stub_status: 'stub_status'     # name(dimension): REGEX to match
69 #     custom_log_format:                  # define a custom log format
70 #          pattern: '(?P<address>[\da-f.:]+) -.*?"(?P<method>[A-Z]+) (?P<url>.*?)" (?P<code>[1-9]\d{2}) (?P<bytes_sent>\d+) (?P<resp_length>\d+) (?P<resp_time>\d\.\d+) '
71 #          time_multiplier: 1000000       # type <int> - convert time to microseconds
72
73 # ----------------------------------------------------------------------
74 # WEB SERVER CONFIGURATION
75 #
76 # Make sure the web server log directory and the web server log files
77 # can be read by user 'netdata'.
78 #
79 # To enable the timings chart and the requests size dimension, the
80 # web server needs to log them. This is how to add them:
81 #
82 # nginx:
83 #   log_format netdata '$remote_addr - $remote_user [$time_local] '
84 #                      '"$request" $status $body_bytes_sent '
85 #                      '$request_length $request_time '
86 #                      '"$http_referer" "$http_user_agent"';
87 #   access_log /var/log/nginx/access.log netdata;
88 #
89 # apache (you need mod_logio enabled):
90 #   LogFormat "%h %l %u %t \"%r\" %>s %O %I %D \"%{Referer}i\" \"%{User-Agent}i\"" vhost_netdata
91 #   LogFormat "%h %l %u %t \"%r\" %>s %O %I %D \"%{Referer}i\" \"%{User-Agent}i\"" netdata
92 #   CustomLog "/var/log/apache2/access.log" netdata
93
94 # ----------------------------------------------------------------------
95 # AUTO-DETECTION JOBS
96 # only one of them per web server will run (when they have the same name)
97
98
99 # -------------------------------------------
100 # nginx log on various distros
101
102 # debian, arch
103 nginx_log:
104   name: 'nginx'
105   path: '/var/log/nginx/access.log'
106
107 # gentoo
108 nginx_log2:
109   name: 'nginx'
110   path: '/var/log/nginx/localhost.access_log'
111
112
113 # -------------------------------------------
114 # apache log on various distros
115
116 # debian
117 apache_log:
118   name: 'apache'
119   path: '/var/log/apache2/access.log'
120
121 # gentoo
122 apache_log2:
123   name: 'apache'
124   path: '/var/log/apache2/access_log'
125
126 # arch
127 apache_log3:
128   name: 'apache'
129   path: '/var/log/httpd/access_log'
130
131 # debian
132 apache_vhosts_log:
133   name: 'apache_vhosts'
134   path: '/var/log/apache2/other_vhosts_access.log'
135
136
137 # -------------------------------------------
138 # gunicorn log on various distros
139
140 gunicorn_log:
141   name: 'gunicorn'
142   path: '/var/log/gunicorn/access.log'
143
144 gunicorn_log2:
145   name: 'gunicorn'
146   path: '/var/log/gunicorn/gunicorn-access.log'