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

     1  plugin_name: go.d.plugin
     2  modules:
     3    - meta:
     4        id: collector-go.d.plugin-httpcheck
     5        plugin_name: go.d.plugin
     6        module_name: httpcheck
     7        monitored_instance:
     8          name: HTTP Endpoints
     9          link: ""
    10          icon_filename: globe.svg
    11          categories:
    12            - data-collection.synthetic-checks
    13        keywords:
    14          - webserver
    15        related_resources:
    16          integrations:
    17            list: []
    18        info_provided_to_referring_integrations:
    19          description: ""
    20        most_popular: true
    21      overview:
    22        data_collection:
    23          metrics_description: |
    24            This collector monitors HTTP servers availability and response time.
    25          method_description: ""
    26        supported_platforms:
    27          include: []
    28          exclude: []
    29        multi_instance: true
    30        additional_permissions:
    31          description: ""
    32        default_behavior:
    33          auto_detection:
    34            description: ""
    35          limits:
    36            description: ""
    37          performance_impact:
    38            description: ""
    39      setup:
    40        prerequisites:
    41          list: []
    42        configuration:
    43          file:
    44            name: go.d/httpcheck.conf
    45          options:
    46            description: |
    47              The following options can be defined globally: update_every, autodetection_retry.
    48            folding:
    49              title: Config options
    50              enabled: true
    51            list:
    52              - name: update_every
    53                description: Data collection frequency.
    54                default_value: 1
    55                required: false
    56              - name: autodetection_retry
    57                description: Recheck interval in seconds. Zero means no recheck will be scheduled.
    58                default_value: 0
    59                required: false
    60              - name: url
    61                description: Server URL.
    62                default_value: ""
    63                required: true
    64              - name: status_accepted
    65                description: "HTTP accepted response statuses. Anything else will result in 'bad status' in the status chart."
    66                default_value: "[200]"
    67                required: false
    68              - name: response_match
    69                description: If the status code is accepted, the content of the response will be matched against this regular expression.
    70                default_value: ""
    71                required: false
    72              - name: headers_match
    73                description: "This option defines a set of rules that check for specific key-value pairs in the HTTP headers of the response."
    74                default_value: "[]"
    75                required: false
    76              - name: headers_match.exclude
    77                description: "This option determines whether the rule should check for the presence of the specified key-value pair or the absence of it."
    78                default_value: false
    79                required: false
    80              - name: headers_match.key
    81                description: "The exact name of the HTTP header to check for."
    82                default_value: ""
    83                required: true
    84              - name: headers_match.value
    85                description: "The [pattern](https://github.com/netdata/go.d.plugin/tree/master/pkg/matcher#supported-format) to match against the value of the specified header."
    86                default_value: ""
    87                required: false
    88              - name: cookie_file
    89                description: Path to cookie file. See [cookie file format](https://everything.curl.dev/http/cookies/fileformat).
    90                default_value: ""
    91                required: false
    92              - name: timeout
    93                description: HTTP request timeout.
    94                default_value: 1
    95                required: false
    96              - name: username
    97                description: Username for basic HTTP authentication.
    98                default_value: ""
    99                required: false
   100              - name: password
   101                description: Password for basic HTTP authentication.
   102                default_value: ""
   103                required: false
   104              - name: proxy_url
   105                description: Proxy URL.
   106                default_value: ""
   107                required: false
   108              - name: proxy_username
   109                description: Username for proxy basic HTTP authentication.
   110                default_value: ""
   111                required: false
   112              - name: proxy_password
   113                description: Password for proxy basic HTTP authentication.
   114                default_value: ""
   115                required: false
   116              - name: method
   117                description: HTTP request method.
   118                default_value: "GET"
   119                required: false
   120              - name: body
   121                description: HTTP request body.
   122                default_value: ""
   123                required: false
   124              - name: headers
   125                description: HTTP request headers.
   126                default_value: ""
   127                required: false
   128              - name: not_follow_redirects
   129                description: Redirect handling policy. Controls whether the client follows redirects.
   130                default_value: no
   131                required: false
   132              - name: tls_skip_verify
   133                description: Server certificate chain and hostname validation policy. Controls whether the client performs this check.
   134                default_value: no
   135                required: false
   136              - name: tls_ca
   137                description: Certification authority that the client uses when verifying the server's certificates.
   138                default_value: ""
   139                required: false
   140              - name: tls_cert
   141                description: Client TLS certificate.
   142                default_value: ""
   143                required: false
   144              - name: tls_key
   145                description: Client TLS key.
   146                default_value: ""
   147                required: false
   148          examples:
   149            folding:
   150              title: Config
   151              enabled: true
   152            list:
   153              - name: Basic
   154                description: A basic example configuration.
   155                config: |
   156                  jobs:
   157                    - name: local
   158                      url: http://127.0.0.1:8080
   159              - name: With HTTP request headers
   160                description: Configuration with HTTP request headers that will be sent by the client.
   161                config: |
   162                  jobs:
   163                    - name: local
   164                      url: http://127.0.0.1:8080
   165                      headers:
   166                        Host: localhost:8080
   167                        User-Agent: netdata/go.d.plugin
   168                        Accept: */*
   169              - name: With `status_accepted`
   170                description: A basic example configuration with non-default status_accepted.
   171                config: |
   172                  jobs:
   173                    - name: local
   174                      url: http://127.0.0.1:8080
   175                      status_accepted:
   176                        - 200
   177                        - 204
   178              - name: With `header_match`
   179                description: Example configurations with `header_match`. See the value [pattern](https://github.com/netdata/go.d.plugin/tree/master/pkg/matcher#supported-format) syntax.
   180                config: |
   181                  jobs:
   182                      # The "X-Robots-Tag" header must be present in the HTTP response header,
   183                      # but the value of the header does not matter.
   184                      # This config checks for the presence of the header regardless of its value.
   185                    - name: local
   186                      url: http://127.0.0.1:8080
   187                      header_match:
   188                        - key: X-Robots-Tag
   189  
   190                      # The "X-Robots-Tag" header must be present in the HTTP response header
   191                      # only if its value is equal to "noindex, nofollow".
   192                      # This config checks both the presence of the header and its value.
   193                    - name: local
   194                      url: http://127.0.0.1:8080
   195                      header_match:
   196                        - key: X-Robots-Tag
   197                          value: '= noindex,nofollow'
   198  
   199                      # The "X-Robots-Tag" header must not be present in the HTTP response header
   200                      # but the value of the header does not matter.
   201                      # This config checks for the presence of the header regardless of its value.
   202                    - name: local
   203                      url: http://127.0.0.1:8080
   204                      header_match:
   205                        - key: X-Robots-Tag
   206                          exclude: yes
   207  
   208                      # The "X-Robots-Tag" header must not be present in the HTTP response header
   209                      # only if its value is equal to "noindex, nofollow".
   210                      # This config checks both the presence of the header and its value.
   211                    - name: local
   212                      url: http://127.0.0.1:8080
   213                      header_match:
   214                        - key: X-Robots-Tag
   215                          exclude: yes
   216                          value: '= noindex,nofollow'
   217              - name: HTTP authentication
   218                description: Basic HTTP authentication.
   219                config: |
   220                  jobs:
   221                    - name: local
   222                      url: http://127.0.0.1:8080
   223                      username: username
   224                      password: password
   225              - name: HTTPS with self-signed certificate
   226                description: |
   227                  Do not validate server certificate chain and hostname.
   228                config: |
   229                  jobs:
   230                    - name: local
   231                      url: https://127.0.0.1:8080
   232                      tls_skip_verify: yes
   233              - name: Multi-instance
   234                description: |
   235                  > **Note**: When you define multiple jobs, their names must be unique.
   236                  
   237                  Collecting metrics from local and remote instances.
   238                config: |
   239                  jobs:
   240                    - name: local
   241                      url: http://127.0.0.1:8080
   242                  
   243                    - name: remote
   244                      url: http://192.0.2.1:8080
   245      troubleshooting:
   246        problems:
   247          list: []
   248      alerts: []
   249      metrics:
   250        folding:
   251          title: Metrics
   252          enabled: false
   253        description: ""
   254        availability: []
   255        scopes:
   256          - name: target
   257            description: The metrics refer to the monitored target.
   258            labels:
   259              - name: url
   260                description: url value that is set in the configuration file.
   261            metrics:
   262              - name: httpcheck.response_time
   263                description: HTTP Response Time
   264                unit: ms
   265                chart_type: line
   266                dimensions:
   267                  - name: time
   268              - name: httpcheck.response_length
   269                description: HTTP Response Body Length
   270                unit: characters
   271                chart_type: line
   272                dimensions:
   273                  - name: length
   274              - name: httpcheck.status
   275                description: HTTP Check Status
   276                unit: boolean
   277                chart_type: line
   278                dimensions:
   279                  - name: success
   280                  - name: timeout
   281                  - name: redirect
   282                  - name: no_connection
   283                  - name: bad_content
   284                  - name: bad_header
   285                  - name: bad_status
   286              - name: httpcheck.in_state
   287                description: HTTP Current State Duration
   288                unit: boolean
   289                chart_type: line
   290                dimensions:
   291                  - name: time