youtubebeat/vendor/github.com/elastic/beats/metricbeat/module/http/json/_meta/docs.asciidoc

187 lines
4.1 KiB
Plaintext

This is the `json` metricset of the HTTP module.
[float]
=== Features and Configuration
The JSON structure returned by the HTTP endpoint will be added to the provided `namespace` field as shown in the following example:
[source,json]
----
{
"@timestamp": "2017-05-01T13:00:24.745Z",
"beat": {
"hostname": "mbp",
"name": "mbp",
"version": "6.0.0-alpha1"
},
"http": {
"http_json_namespace": {
"date": "05-01-2017",
"milliseconds_since_epoch": 1493643625474.000000,
"time": "01:00:25 PM"
}
},
"metricset": {
"host": "date.jsontest.com",
"module": "http",
"name": "json",
"namespace": "http_json_namespace",
"rtt": 238397
},
"type": "metricsets"
}
----
Here the response from `date.jsontest.com` is returned in the configured `http_json_namespace` namespace:
[source,json]
----
{
"date": "05-01-2017",
"milliseconds_since_epoch": 1493643625474.000000,
"time": "01:00:25 PM"
}
----
It is required to set a namespace in the general module config section.
[float]
==== request.enabled
With this configuration enabled additional information about the request are included. This includes the following information:
* HTTP Header
* HTTP Method
* Body/Payload
Example:
[source,json]
----
{
"@timestamp": "2017-05-01T13:00:24.745Z",
"beat": {
"hostname": "mbp",
"name": "mbp",
"version": "6.0.0-alpha1"
},
"http": {
"http_json_namespace": {
"date": "05-01-2017",
"milliseconds_since_epoch": 1493643625474.000000,
"time": "01:00:25 PM"
},
"request": {
"body": "",
"headers": {
"Accept": "application/json"
},
"method": "GET"
}
},
"metricset": {
"host": "date.jsontest.com",
"module": "http",
"name": "json",
"namespace": "http_json_namespace",
"rtt": 238397
},
"type": "metricsets"
}
----
[float]
==== response.enabled
With this configuration enabled additional information about the response are included. This includes the following information:
* HTTP Header
* HTTP Status Code
Example:
[source,json]
----
{
"@timestamp": "2017-05-01T13:00:24.745Z",
"beat": {
"hostname": "mbp",
"name": "mbp",
"version": "6.0.0-alpha1"
},
"http": {
"http_json_namespace": {
"date": "05-01-2017",
"milliseconds_since_epoch": 1493643625474.000000,
"time": "01:00:25 PM"
},
"response": {
"headers": {
"Access-Control-Allow-Origin": "*",
"Content-Length": "100",
"Content-Type": "application/json; charset=ISO-8859-1",
"Date": "Mon, 01 May 2017 13:08:38 GMT",
"Server": "Google Frontend",
"X-Cloud-Trace-Context": "3f532d170112fc5b2a0b94fcbd6493b3"
},
"code": 200
}
},
"metricset": {
"host": "date.jsontest.com",
"module": "http",
"name": "json",
"namespace": "http_json_namespace",
"rtt": 238397
},
"type": "metricsets"
}
----
[float]
==== dedot.enabled
With this configuration enabled dots in json field names are replaced with `_` character,
Example:
[source,json]
----
{
"@timestamp": "2017-05-01T13:00:24.745Z",
"beat": {
"hostname": "mbp",
"name": "mbp",
"version": "6.0.0-alpha1"
},
"http": {
"http_json_namespace": {
"date": "05-01-2017",
"milliseconds_since_epoch": 1493643625474.000000,
"time": "01:00:25 PM"
},
"response": {
"headers": {
"Access-Control-Allow-Origin": "*",
"Content-Length": "100",
"Content-Type": "application/json; charset=ISO-8859-1",
"Date": "Mon, 01 May 2017 13:08:38 GMT",
"Server": "Google Frontend",
"X-Cloud-Trace-Context": "3f532d170112fc5b2a0b94fcbd6493b3"
},
"code": 200
}
},
"metricset": {
"host": "date.jsontest.com",
"module": "http",
"name": "json",
"namespace": "http_json_namespace",
"rtt": 238397
},
"type": "metricsets"
}
----
[float]
=== Exposed fields, Dashboards, Indexes, etc.
Since this is a general purpose module that can be tailored for any application that exposes a JSON structure, it
comes with no exposed fields description, dashboards or index patterns.