github.com/netdata/go.d.plugin@v0.58.1/modules/squidlog/metadata.yaml (about)

     1  plugin_name: go.d.plugin
     2  modules:
     3    - meta:
     4        id: collector-go.d.plugin-squidlog
     5        plugin_name: go.d.plugin
     6        module_name: squidlog
     7        monitored_instance:
     8          name: Squid log files
     9          link: https://www.lighttpd.net/
    10          icon_filename: squid.png
    11          categories:
    12            - data-collection.web-servers-and-web-proxies
    13        keywords:
    14          - squid
    15          - logs
    16        related_resources:
    17          integrations:
    18            list: []
    19        info_provided_to_referring_integrations:
    20          description: ""
    21        most_popular: true
    22      overview:
    23        data_collection:
    24          metrics_description: |
    25            his collector monitors Squid servers by parsing their access log files.
    26          method_description: |
    27            It automatically detects log files of Squid severs running on localhost.
    28        supported_platforms:
    29          include: []
    30          exclude: []
    31        multi_instance: true
    32        additional_permissions:
    33          description: ""
    34        default_behavior:
    35          auto_detection:
    36            description: ""
    37          limits:
    38            description: ""
    39          performance_impact:
    40            description: ""
    41      setup:
    42        prerequisites:
    43          list: []
    44        configuration:
    45          file:
    46            name: go.d/squidlog.conf
    47          options:
    48            description: |
    49              Squid [log format codes](http://www.squid-cache.org/Doc/config/logformat/).
    50  
    51              Squidlog is aware how to parse and interpret the following codes:
    52  
    53              | field          | squid format code | description                                                   |
    54              |----------------|-------------------|---------------------------------------------------------------|
    55              | resp_time      | %tr               | Response time (milliseconds).                                 |
    56              | client_address | %>a               | Client source IP address.                                     |
    57              | client_address | %>A               | Client FQDN.                                                  |
    58              | cache_code     | %Ss               | Squid request status (TCP_MISS etc).                          |
    59              | http_code      | %>Hs              | The HTTP response status code from Content Gateway to client. |
    60              | resp_size      | %<st              | Total size of reply sent to client (after adaptation).        |
    61              | req_method     | %rm               | Request method (GET/POST etc).                                |
    62              | hier_code      | %Sh               | Squid hierarchy status (DEFAULT_PARENT etc).                  |
    63              | server_address | %<a               | Server IP address of the last server or peer connection.      |
    64              | server_address | %<A               | Server FQDN or peer name.                                     |
    65              | mime_type      | %mt               | MIME content type.                                            |
    66  
    67              In addition, to make `Squid` [native log format](https://wiki.squid-cache.org/Features/LogFormat#Squid_native_access.log_format_in_detail) csv parsable, squidlog understands these groups of codes:
    68  
    69              | field       | squid format code | description                        |
    70              |-------------|-------------------|------------------------------------|
    71              | result_code | %Ss/%>Hs          | Cache code and http code.          |
    72              | hierarchy   | %Sh/%<a           | Hierarchy code and server address. |
    73            folding:
    74              title: Config options
    75              enabled: true
    76            list:
    77              - name: update_every
    78                description: Data collection frequency.
    79                default_value: 1
    80                required: false
    81              - name: autodetection_retry
    82                description: Recheck interval in seconds. Zero means no recheck will be scheduled.
    83                default_value: 0
    84                required: false
    85              - name: path
    86                description: Path to the Squid access log file.
    87                default_value: /var/log/squid/access.log
    88                required: true
    89              - name: exclude_path
    90                description: Path to exclude.
    91                default_value: "*.gz"
    92                required: false
    93              - name: parser
    94                description: Log parser configuration.
    95                default_value: ""
    96                required: false
    97              - name: parser.log_type
    98                description: Log parser type.
    99                default_value: auto
   100                required: false
   101                detailed_description: |
   102                  Weblog supports 3 different log parsers:
   103  
   104                  | Parser type | Description                               |
   105                  |-------------|-------------------------------------------|
   106                  | csv         | A comma-separated values                  |
   107                  | ltsv        | [LTSV](http://ltsv.org/)                  |
   108                  | regexp      | Regular expression with named groups      |
   109                  
   110                  Syntax:
   111  
   112                  ```yaml
   113                  parser:
   114                    log_type: csv
   115                  ```
   116              - name: parser.csv_config
   117                description: CSV log parser config.
   118                default_value: ""
   119                required: false
   120              - name: parser.csv_config.delimiter
   121                description: CSV field delimiter.
   122                default_value: space
   123                required: false
   124              - name: parser.csv_config.format
   125                description: CSV log format.
   126                default_value: "- $resp_time $client_address $result_code $resp_size $req_method - - $hierarchy $mime_type"
   127                required: true
   128                detailed_description: ""
   129              - name: parser.ltsv_config
   130                description: LTSV log parser config.
   131                default_value: ""
   132                required: false
   133              - name: parser.ltsv_config.field_delimiter
   134                description: LTSV field delimiter.
   135                default_value: "\\t"
   136                required: false
   137              - name: parser.ltsv_config.value_delimiter
   138                description: LTSV value delimiter.
   139                default_value: ":"
   140                required: false
   141              - name: parser.ltsv_config.mapping
   142                description: LTSV fields mapping to **known fields**.
   143                default_value: ""
   144                required: true
   145                detailed_description: |
   146                  The mapping is a dictionary where the key is a field, as in logs, and the value is the corresponding **known field**.
   147  
   148                  > **Note**: don't use `$` and `%` prefixes for mapped field names.
   149  
   150                  ```yaml
   151                  parser:
   152                    log_type: ltsv
   153                    ltsv_config:
   154                      mapping:
   155                        label1: field1
   156                        label2: field2
   157                  ```
   158              - name: parser.regexp_config
   159                description: RegExp log parser config.
   160                default_value: ""
   161                required: false
   162              - name: parser.regexp_config.pattern
   163                description: RegExp pattern with named groups.
   164                default_value: ""
   165                required: true
   166                detailed_description: |
   167                  Use pattern with subexpressions names. These names should be **known fields**.
   168                  
   169                  > **Note**: don't use `$` and `%` prefixes for mapped field names.
   170  
   171                  Syntax:
   172  
   173                  ```yaml
   174                  parser:
   175                    log_type: regexp
   176                    regexp_config:
   177                      pattern: PATTERN
   178                  ```
   179          examples:
   180            folding:
   181              title: Config
   182              enabled: true
   183            list: []
   184      troubleshooting:
   185        problems:
   186          list: []
   187      alerts: []
   188      metrics:
   189        folding:
   190          title: Metrics
   191          enabled: false
   192        description: ""
   193        availability: []
   194        scopes:
   195          - name: global
   196            description: These metrics refer to the entire monitored application.
   197            labels: []
   198            metrics:
   199              - name: squidlog.requests
   200                description: Total Requests
   201                unit: requests/s
   202                chart_type: line
   203                dimensions:
   204                  - name: requests
   205              - name: squidlog.excluded_requests
   206                description: Excluded Requests
   207                unit: requests/s
   208                chart_type: line
   209                dimensions:
   210                  - name: unmatched
   211              - name: squidlog.type_requests
   212                description: Requests By Type
   213                unit: requests/s
   214                chart_type: stacked
   215                dimensions:
   216                  - name: success
   217                  - name: bad
   218                  - name: redirect
   219                  - name: error
   220              - name: squidlog.http_status_code_class_responses
   221                description: Responses By HTTP Status Code Class
   222                unit: responses/s
   223                chart_type: stacked
   224                dimensions:
   225                  - name: 1xx
   226                  - name: 2xx
   227                  - name: 3xx
   228                  - name: 4xx
   229                  - name: 5xx
   230              - name: squidlog.http_status_code_responses
   231                description: Responses By HTTP Status Code
   232                unit: responses/s
   233                chart_type: stacked
   234                dimensions:
   235                  - name: a dimension per HTTP response code
   236              - name: squidlog.bandwidth
   237                description: Bandwidth
   238                unit: kilobits/s
   239                chart_type: line
   240                dimensions:
   241                  - name: sent
   242              - name: squidlog.response_time
   243                description: Response Time
   244                unit: milliseconds
   245                chart_type: line
   246                dimensions:
   247                  - name: min
   248                  - name: max
   249                  - name: avg
   250              - name: squidlog.uniq_clients
   251                description: Unique Clients
   252                unit: clients
   253                chart_type: line
   254                dimensions:
   255                  - name: clients
   256              - name: squidlog.cache_result_code_requests
   257                description: Requests By Cache Result Code
   258                unit: requests/s
   259                chart_type: stacked
   260                dimensions:
   261                  - name: a dimension per cache result code
   262              - name: squidlog.cache_result_code_transport_tag_requests
   263                description: Requests By Cache Result Delivery Transport Tag
   264                unit: requests/s
   265                chart_type: stacked
   266                dimensions:
   267                  - name: a dimension per cache result delivery transport tag
   268              - name: squidlog.cache_result_code_handling_tag_requests
   269                description: Requests By Cache Result Handling Tag
   270                unit: requests/s
   271                chart_type: stacked
   272                dimensions:
   273                  - name: a dimension per cache result handling tag
   274              - name: squidlog.cache_code_object_tag_requests
   275                description: Requests By Cache Result Produced Object Tag
   276                unit: requests/s
   277                chart_type: stacked
   278                dimensions:
   279                  - name: a dimension per cache result produced object tag
   280              - name: squidlog.cache_code_load_source_tag_requests
   281                description: Requests By Cache Result Load Source Tag
   282                unit: requests/s
   283                chart_type: stacked
   284                dimensions:
   285                  - name: a dimension per cache result load source tag
   286              - name: squidlog.cache_code_error_tag_requests
   287                description: Requests By Cache Result Errors Tag
   288                unit: requests/s
   289                chart_type: stacked
   290                dimensions:
   291                  - name: a dimension per cache result error tag
   292              - name: squidlog.http_method_requests
   293                description: Requests By HTTP Method
   294                unit: requests/s
   295                chart_type: stacked
   296                dimensions:
   297                  - name: a dimension per HTTP method
   298              - name: squidlog.mime_type_requests
   299                description: Requests By MIME Type
   300                unit: requests/s
   301                chart_type: stacked
   302                dimensions:
   303                  - name: a dimension per MIME type
   304              - name: squidlog.hier_code_requests
   305                description: Requests By Hierarchy Code
   306                unit: requests/s
   307                chart_type: stacked
   308                dimensions:
   309                  - name: a dimension per hierarchy code
   310              - name: squidlog.server_address_forwarded_requests
   311                description: Forwarded Requests By Server Address
   312                unit: requests/s
   313                chart_type: stacked
   314                dimensions:
   315                  - name: a dimension per server address