diff --git a/metricbeat/docs/fields.asciidoc b/metricbeat/docs/fields.asciidoc index b901041e88a5..f5c58128c948 100644 --- a/metricbeat/docs/fields.asciidoc +++ b/metricbeat/docs/fields.asciidoc @@ -16,6 +16,7 @@ grouped in the following categories: * <> * <> * <> +* <> * <> * <> * <> @@ -700,6 +701,617 @@ required: True The document type. Always set to "metricsets". +[[exported-fields-goprof]] +== goprof Fields + +goprof Module + + + +[float] +== goprof Fields + +go http based process profiling information. + + + +[float] +== memprof Fields + +HTTP sampling based memory profiler. + + + +[float] +=== goprof.memprof.run + +type: keyword + +unique id shared by all events of the same profiling run. + +[float] +=== goprof.memprof.type + +type: keyword + +memprof report type. + +[float] +== summary Fields + +Total allocation statistics of profile run. + + + +[float] +=== goprof.memprof.summary.alloc_objects.count + +type: long + +Total number of objects allocated. + +[float] +=== goprof.memprof.summary.alloc_space.count + +type: long + +format: bytes + +Total amount of bytes allocated. + +[float] +=== goprof.memprof.summary.inuse_objects.count + +type: long + +Number of objects not being collected by garbage collector. + +[float] +=== goprof.memprof.summary.inuse_space.count + +type: long + +format: bytes + +Amount of space not being collected by garbage collector. + +[float] +== function Fields + +Per function allocation statisitics. + + + +[float] +=== goprof.memprof.function.package + +type: keyword + +The function its package name + +[float] +=== goprof.memprof.function.name + +type: keyword + +The function name + +[float] +=== goprof.memprof.function.file + +type: keyword + +The file name in package the function is defined in + +[float] +== self Fields + +Object allocation statistics for allocation within the function itself + + + +[float] +=== goprof.memprof.function.self.alloc_objects.count + +type: long + +Total number of objects allocated. + +[float] +=== goprof.memprof.function.self.alloc_space.count + +type: long + +format: bytes + +Total amount of bytes allocated. + +[float] +=== goprof.memprof.function.self.inuse_objects.count + +type: long + +Number of objects not being collected by garbage collector. + +[float] +=== goprof.memprof.function.self.inuse_space.count + +type: long + +format: bytes + +Amount of space not being collected by garbage collector. + +[float] +== total Fields + +Cummulative allocation statistics including the function itself and all functions being called directly or indirectly. + + + +[float] +=== goprof.memprof.function.total.alloc_objects.count + +type: long + +Total number of objects allocated. + +[float] +=== goprof.memprof.function.total.alloc_space.count + +type: long + +format: bytes + +Total amount of bytes allocated. + +[float] +=== goprof.memprof.function.total.inuse_objects.count + +type: long + +Number of objects not being collected by garbage collector. + +[float] +=== goprof.memprof.function.total.inuse_space.count + +type: long + +format: bytes + +Amount of space not being collected by garbage collector. + +[float] +== children Fields + +Cummulative allocation statistics including all functions being called directly or indirectly, but not the current function itself. + + + +[float] +=== goprof.memprof.function.children.alloc_objects.count + +type: long + +Total number of objects allocated. + +[float] +=== goprof.memprof.function.children.alloc_space.count + +type: long + +format: bytes + +Total amount of bytes allocated. + +[float] +=== goprof.memprof.function.children.inuse_objects.count + +type: long + +Number of objects not being collected by garbage collector. + +[float] +=== goprof.memprof.function.children.inuse_space.count + +type: long + +format: bytes + +Amount of space not being collected by garbage collector. + +[float] +== edge_allocation Fields + +Allocation statistics between caller and callee. + + + +[float] +== parent Fields + +The parent node in call graph (caller). + + + +[float] +=== goprof.memprof.edge_allocation.parent.package + +type: keyword + +The function its package name + +[float] +=== goprof.memprof.edge_allocation.parent.name + +type: keyword + +The function name + +[float] +=== goprof.memprof.edge_allocation.parent.file + +type: keyword + +The file name in package the function is defined in + +[float] +== child Fields + +The child node in call graph (callee). + + + +[float] +=== goprof.memprof.edge_allocation.child.package + +type: keyword + +The function its package name + +[float] +=== goprof.memprof.edge_allocation.child.name + +type: keyword + +The function name + +[float] +=== goprof.memprof.edge_allocation.child.file + +type: keyword + +The file name in package the function is defined in + +[float] +== stats Fields + +Total amount of allocations due to caller using the callee. + + + +[float] +=== goprof.memprof.edge_allocation.stats.alloc_objects.count + +type: long + +Total number of objects allocated. + +[float] +=== goprof.memprof.edge_allocation.stats.alloc_space.count + +type: long + +format: bytes + +Total amount of bytes allocated. + +[float] +=== goprof.memprof.edge_allocation.stats.inuse_objects.count + +type: long + +Number of objects not being collected by garbage collector. + +[float] +=== goprof.memprof.edge_allocation.stats.inuse_space.count + +type: long + +format: bytes + +Amount of space not being collected by garbage collector. + +[float] +== allocation Fields + +Allocation sample captured by profiler + + + +[float] +=== goprof.memprof.allocation.package + +type: keyword + +The function its package name + +[float] +=== goprof.memprof.allocation.function + +type: keyword + +The function name + +[float] +=== goprof.memprof.allocation.file + +type: keyword + +The file name in package the function is defined in + +[float] +=== goprof.memprof.allocation.line + +type: integer + +The file its line the allocation happened. + +[float] +=== goprof.memprof.allocation.address + +type: long + +Executable in memory location the allocation happened at. + +[float] +== stats Fields + +Total allocation statistics for allocations happening at the given location. + + + +[float] +=== goprof.memprof.allocation.stats.alloc_objects.count + +type: long + +Total number of objects allocated. + +[float] +=== goprof.memprof.allocation.stats.alloc_space.count + +type: long + +format: bytes + +Total amount of bytes allocated. + +[float] +=== goprof.memprof.allocation.stats.inuse_objects.count + +type: long + +Number of objects not being collected by garbage collector. + +[float] +=== goprof.memprof.allocation.stats.inuse_space.count + +type: long + +format: bytes + +Amount of space not being collected by garbage collector. + +[float] +== memstats Fields + +golang expvar memstats + + + +[float] +=== goprof.memstats.type + +type: keyword + +memstats report type. + +[float] +=== goprof.memstats.next_gc_limit + +type: long + +format: bytes + +Upper bound of memory being allocated until another garbage collection phase will be run. + + +[float] +=== goprof.memstats.gc_count + +type: long + +Total number of garbage collection cycles executed since program startup + + +[float] +=== goprof.memstats.gc_total_pause.ns + +type: long + +Total duration of all garbage collection cycles + +[float] +== allocations Fields + +Application heap allocations counters. + + + +[float] +=== goprof.memstats.allocations.mallocs + +type: long + +Total number of memory allocations + + +[float] +=== goprof.memstats.allocations.frees + +type: long + +Number of memory allocations being freed. + + +[float] +=== goprof.memstats.allocations.objects + +type: long + +Total number of allocated heap objects. + + +[float] +=== goprof.memstats.allocations.total + +type: long + +format: bytes + +Total number of bytes being allocated since startup. + + +[float] +=== goprof.memstats.allocations.allocated + +type: long + +format: bytes + +Number of bytes being actively allocated and not yet freed. + + +[float] +=== goprof.memstats.allocations.idle + +type: long + +format: bytes + +Bytes in idle heap spans + + +[float] +=== goprof.memstats.allocations.active + +type: long + +format: bytes + +Bytes in non-idle heap spans + + +[float] +== system Fields + +Memory allocator system counters. + + + +[float] +=== goprof.memstats.system.total + +type: long + +format: bytes + +Total number of bytes received from system + + +[float] +=== goprof.memstats.system.obtained + +type: long + +format: bytes + +Bytes optained from system + + +[float] +=== goprof.memstats.system.stack + +type: long + +format: bytes + +System memory allocated for go-routine stacks. + + +[float] +=== goprof.memstats.system.released + +type: long + +format: bytes + +Number of bytes returned to OS. + + +[float] +=== goprof.memstats.size + +type: long + +format: bytes + +The allocator bucket its size. + +[float] +=== goprof.memstats.mallocs + +type: long + +Total number of allocation from current size class. + +[float] +=== goprof.memstats.frees + +type: long + +Total number of objects being freed in current size class. + +[float] +=== goprof.memstats.run + +type: long + +The nth garbage collection cycle since startup + + +[float] +=== goprof.memstats.start + +type: date + +GC cycle start timestamp + +[float] +=== goprof.memstats.end + +type: date + +GC cycle end timestamp + +[float] +=== goprof.memstats.duration.ns + +type: long + +GC cycle duration in nanoseconds. + [[exported-fields-haproxy]] == haproxy Fields diff --git a/metricbeat/docs/modules/goprof.asciidoc b/metricbeat/docs/modules/goprof.asciidoc new file mode 100644 index 000000000000..817c54d028f5 --- /dev/null +++ b/metricbeat/docs/modules/goprof.asciidoc @@ -0,0 +1,40 @@ +//// +This file is generated! See scripts/docs_collector.py +//// + +[[metricbeat-module-goprof]] +== goprof Module + +This is the goprof Module. + + + +[float] +=== Example Configuration + +The goprof module supports the standard configuration options that are described +in <>. Here is an example configuration: + +[source,yaml] +---- +metricbeat.modules: +#- module: goprof + #metricsets: ["memstats", "memprof"] + #enabled: true + #period: 30s + #hosts: ["localhost:6060"] +---- + +[float] +=== Metricsets + +The following metricsets are available: + +* <> + +* <> + +include::goprof/memprof.asciidoc[] + +include::goprof/memstats.asciidoc[] + diff --git a/metricbeat/docs/modules/goprof/memprof.asciidoc b/metricbeat/docs/modules/goprof/memprof.asciidoc new file mode 100644 index 000000000000..58153b4e685c --- /dev/null +++ b/metricbeat/docs/modules/goprof/memprof.asciidoc @@ -0,0 +1,19 @@ +//// +This file is generated! See scripts/docs_collector.py +//// + +[[metricbeat-metricset-goprof-memprof]] +include::../../../module/goprof/memprof/_meta/docs.asciidoc[] + + +==== Fields + +For a description of each field in the metricset, see the +<> section. + +Here is an example document generated by this metricset: + +[source,json] +---- +include::../../../module/goprof/memprof/_meta/data.json[] +---- diff --git a/metricbeat/docs/modules/goprof/memstats.asciidoc b/metricbeat/docs/modules/goprof/memstats.asciidoc new file mode 100644 index 000000000000..8c561f858039 --- /dev/null +++ b/metricbeat/docs/modules/goprof/memstats.asciidoc @@ -0,0 +1,19 @@ +//// +This file is generated! See scripts/docs_collector.py +//// + +[[metricbeat-metricset-goprof-memstats]] +include::../../../module/goprof/memstats/_meta/docs.asciidoc[] + + +==== Fields + +For a description of each field in the metricset, see the +<> section. + +Here is an example document generated by this metricset: + +[source,json] +---- +include::../../../module/goprof/memstats/_meta/data.json[] +---- diff --git a/metricbeat/etc/beat.full.yml b/metricbeat/etc/beat.full.yml index f8b83ba764db..fed37b215ea5 100644 --- a/metricbeat/etc/beat.full.yml +++ b/metricbeat/etc/beat.full.yml @@ -78,6 +78,13 @@ metricbeat.modules: #vars_path: /debug/vars +#------------------------------- goprof Module ------------------------------- +#- module: goprof + #metricsets: ["memstats", "memprof"] + #enabled: true + #period: 30s + #hosts: ["localhost:6060"] + #------------------------------- haproxy Module ------------------------------ #- module: haproxy #metricsets: [stat, info] diff --git a/metricbeat/etc/beat.yml b/metricbeat/etc/beat.yml index 984356ef6ac7..b97b3c633454 100644 --- a/metricbeat/etc/beat.yml +++ b/metricbeat/etc/beat.yml @@ -43,4 +43,11 @@ metricbeat.modules: period: 10s processes: ['.*'] +#------------------------------- goprof Module ------------------------------- +#- module: goprof + #metricsets: ["memstats", "memprof"] + #enabled: true + #period: 30s + #hosts: ["localhost:6060"] + diff --git a/metricbeat/etc/fields.yml b/metricbeat/etc/fields.yml index 16ff0afb891a..0cd5b787d626 100644 --- a/metricbeat/etc/fields.yml +++ b/metricbeat/etc/fields.yml @@ -377,6 +377,332 @@ description: > Total number of events published +- key: goprof + title: "goprof" + description: > + goprof Module + fields: + - name: goprof + type: group + description: > + go http based process profiling information. + fields: + - name: memprof + type: group + description: > + HTTP sampling based memory profiler. + fields: + + - name: run + type: keyword + description: unique id shared by all events of the same profiling run. + + - name: type + type: keyword + description: memprof report type. + + - name: summary + type: group + description: > + Total allocation statistics of profile run. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + + - name: function + type: group + description: > + Per function allocation statisitics. + fields: + - name: package + type: keyword + description: The function its package name + - name: name + type: keyword + description: The function name + - name: file + type: keyword + description: The file name in package the function is defined in + - name: self + type: group + description: > + Object allocation statistics for allocation within the function itself + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + - name: total + type: group + description: > + Cummulative allocation statistics including the function itself and + all functions being called directly or indirectly. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + - name: children + type: group + description: > + Cummulative allocation statistics including all functions being + called directly or indirectly, but not the current function itself. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + + - name: edge_allocation + type: group + description: > + Allocation statistics between caller and callee. + fields: + - name: parent + type: group + description: > + The parent node in call graph (caller). + fields: + - name: package + type: keyword + description: The function its package name + - name: name + type: keyword + description: The function name + - name: file + type: keyword + description: The file name in package the function is defined in + - name: child + type: group + description: > + The child node in call graph (callee). + fields: + - name: package + type: keyword + description: The function its package name + - name: name + type: keyword + description: The function name + - name: file + type: keyword + description: The file name in package the function is defined in + - name: stats + type: group + description: > + Total amount of allocations due to caller using the callee. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + + - name: allocation + type: group + description: > + Allocation sample captured by profiler + fields: + - name: package + type: keyword + description: The function its package name + - name: function + type: keyword + description: The function name + - name: file + type: keyword + description: The file name in package the function is defined in + - name: line + type: integer + description: The file its line the allocation happened. + - name: address + type: long + description: Executable in memory location the allocation happened at. + - name: stats + type: group + description: > + Total allocation statistics for allocations happening at the given location. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + + - name: memstats + type: group + description: > + golang expvar memstats + fields: + - name: type + type: keyword + description: memstats report type. + + # GC summary fields (type == gc_summary) + - name: next_gc_limit + type: long + format: bytes + description: > + Upper bound of memory being allocated until another garbage collection + phase will be run. + - name: gc_count + type: long + description: > + Total number of garbage collection cycles executed since program startup + - name: gc_total_pause.ns + type: long + description: Total duration of all garbage collection cycles + + # Heap usage counters (type == heap) + - name: allocations + type: group + description: > + Application heap allocations counters. + fields: + - name: mallocs + type: long + description: > + Total number of memory allocations + - name: frees + type: long + description: > + Number of memory allocations being freed. + - name: objects + type: long + description: > + Total number of allocated heap objects. + - name: total + type: long + format: bytes + description: > + Total number of bytes being allocated since startup. + - name: allocated + type: long + format: bytes + description: > + Number of bytes being actively allocated and not yet freed. + - name: idle + type: long + format: bytes + description: > + Bytes in idle heap spans + - name: active + type: long + format: bytes + description: > + Bytes in non-idle heap spans + - name: system + type: group + description: > + Memory allocator system counters. + fields: + - name: total + type: long + format: bytes + description: > + Total number of bytes received from system + - name: obtained + type: long + format: bytes + description: > + Bytes optained from system + - name: stack + type: long + format: bytes + description: > + System memory allocated for go-routine stacks. + - name: released + type: long + format: bytes + description: > + Number of bytes returned to OS. + + # Go runtime allocator (per size class) counters (type == allocator) + - name: size + type: long + format: bytes + description: The allocator bucket its size. + - name: mallocs + type: long + description: Total number of allocation from current size class. + - name: frees + type: long + description: Total number of objects being freed in current size class. + + # Per garbage collection cycle counters (type == gc_cycle) + - name: run + type: long + description: > + The nth garbage collection cycle since startup + - name: start + type: date + description: GC cycle start timestamp + - name: end + type: date + description: GC cycle end timestamp + - name: duration.ns + type: long + description: GC cycle duration in nanoseconds. + - key: haproxy title: "haproxy" description: > diff --git a/metricbeat/etc/kibana/dashboard/CPU-slash-Memory-per-container.json b/metricbeat/etc/kibana/dashboard/CPU-slash-Memory-per-container.json deleted file mode 100644 index 7171f257caab..000000000000 --- a/metricbeat/etc/kibana/dashboard/CPU-slash-Memory-per-container.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "hits": 0, - "timeRestore": false, - "description": "", - "title": "CPU/Memory per container", - "uiStateJSON": "{\"P-2\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-4\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-5\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}}", - "panelsJSON": "[{\"col\":4,\"id\":\"Container-CPU-usage\",\"panelIndex\":2,\"row\":1,\"size_x\":9,\"size_y\":4,\"type\":\"visualization\"},{\"col\":1,\"id\":\"System-Navigation\",\"panelIndex\":3,\"row\":1,\"size_x\":3,\"size_y\":4,\"type\":\"visualization\"},{\"col\":1,\"id\":\"Container-Memory-stats\",\"panelIndex\":4,\"row\":5,\"size_x\":12,\"size_y\":3,\"type\":\"visualization\"},{\"col\":1,\"id\":\"Container-Block-IO\",\"panelIndex\":5,\"row\":8,\"size_x\":12,\"size_y\":4,\"type\":\"visualization\"}]", - "optionsJSON": "{\"darkTheme\":false}", - "version": 1, - "kibanaSavedObjectMeta": { - "searchSourceJSON": "{\"filter\":[{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}}}]}" - } -} \ No newline at end of file diff --git a/metricbeat/etc/kibana/dashboard/go-Process-Memory-Profiling-Overview.json b/metricbeat/etc/kibana/dashboard/go-Process-Memory-Profiling-Overview.json new file mode 100644 index 000000000000..da66f2808017 --- /dev/null +++ b/metricbeat/etc/kibana/dashboard/go-Process-Memory-Profiling-Overview.json @@ -0,0 +1,13 @@ +{ + "hits": 0, + "timeRestore": false, + "description": "", + "title": "go Process Memory Profiling Overview", + "uiStateJSON": "{}", + "panelsJSON": "[{\"col\":1,\"id\":\"go-Process-Memory-Overview\",\"panelIndex\":1,\"row\":1,\"size_x\":7,\"size_y\":3,\"type\":\"visualization\"},{\"col\":8,\"id\":\"go-Process-Object-count\",\"panelIndex\":2,\"row\":1,\"size_x\":5,\"size_y\":3,\"type\":\"visualization\"},{\"col\":1,\"id\":\"go-Process-Memory-Profile-Top-Active-Allocations\",\"panelIndex\":3,\"row\":4,\"size_x\":12,\"size_y\":6,\"type\":\"visualization\"},{\"id\":\"go-Process-Memory-Profile-Top-Active-Indirect-Allocations\",\"type\":\"visualization\",\"panelIndex\":4,\"size_x\":12,\"size_y\":5,\"col\":1,\"row\":10},{\"id\":\"go-Process-Memory-Profile-Active-Allocations\",\"type\":\"search\",\"panelIndex\":5,\"size_x\":12,\"size_y\":5,\"col\":1,\"row\":15,\"columns\":[\"goprof.memprof.allocation.function\",\"goprof.memprof.allocation.stats.inuse_objects.count\",\"goprof.memprof.allocation.package\",\"goprof.memprof.allocation.file\",\"goprof.memprof.allocation.line\"],\"sort\":[\"@timestamp\",\"desc\"]}]", + "optionsJSON": "{\"darkTheme\":false}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"filter\":[{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}}}]}" + } +} \ No newline at end of file diff --git a/metricbeat/etc/kibana/dashboard/go-Process-Memory-Statistics.json b/metricbeat/etc/kibana/dashboard/go-Process-Memory-Statistics.json new file mode 100644 index 000000000000..10e3e8bbdd07 --- /dev/null +++ b/metricbeat/etc/kibana/dashboard/go-Process-Memory-Statistics.json @@ -0,0 +1,13 @@ +{ + "hits": 0, + "timeRestore": false, + "description": "", + "title": "go Process Memory Statistics", + "uiStateJSON": "{}", + "panelsJSON": "[{\"col\":1,\"id\":\"go-Process-Memory-Overview\",\"panelIndex\":1,\"row\":1,\"size_x\":12,\"size_y\":4,\"type\":\"visualization\"},{\"id\":\"go-Process-Object-count\",\"type\":\"visualization\",\"panelIndex\":2,\"size_x\":5,\"size_y\":3,\"col\":8,\"row\":5},{\"id\":\"go-Process-Allocations-Rate\",\"type\":\"visualization\",\"panelIndex\":3,\"size_x\":7,\"size_y\":3,\"col\":1,\"row\":5}]", + "optionsJSON": "{\"darkTheme\":false}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"filter\":[{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}}}]}" + } +} \ No newline at end of file diff --git a/metricbeat/etc/kibana/index-pattern/metricbeat.json b/metricbeat/etc/kibana/index-pattern/metricbeat.json index e923e97f7877..d8d694ca96e4 100644 --- a/metricbeat/etc/kibana/index-pattern/metricbeat.json +++ b/metricbeat/etc/kibana/index-pattern/metricbeat.json @@ -1,6 +1,6 @@ { - "fields": "[{\"count\": 0, \"name\": \"beat.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"beat.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"@timestamp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"tags\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"fields\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"metricset.module\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"metricset.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"metricset.host\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"metricset.rtt\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"type\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.total_accesses\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.total_kbytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.requests_per_sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.bytes_per_sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.bytes_per_request\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.workers.busy\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.workers.idle\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.uptime.server_uptime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.uptime.uptime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.load\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.system\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.children_user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.children_system\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.connections.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.connections.async.writing\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.connections.async.keep_alive\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.connections.async.closing\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.load.1\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.load.5\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.load.15\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.starting_up\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.reading_request\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.sending_reply\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.keepalive\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.dns_lookup\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.closing_connection\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.logging\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.gracefully_finishing\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.idle_cleanup\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.open_slot\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.waiting_for_connection\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.started\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.closed\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.running\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.skipped\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.files.open\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.files.truncated\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.prospectors.log_files.renamed\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.prospectors.log_files.truncated\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.registrar.states.update\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.registrar.states.cleanup\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.registrar.states.current\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.registrar.writes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.events.ack\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.events.not_ack\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.read.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.read.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.write.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.write.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.publisher.events.published\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.nb_proc\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.process_num\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.pid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.uptime_sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.mem_max_bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ulimit_n\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.compress.bps.in\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.compress.bps.out\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.compress.bps.rate_limit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.conn.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.conn.rate.limit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.curr.conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.curr.ssl_conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.cum.conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.cum.req\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.cum.ssl_conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.hard_conn\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.ssl.conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.ssl.rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.sock\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.conn.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.conn.rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.sess_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.pipes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.zlib_mem_usage\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.pipes.used\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.pipes.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.sess.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.sess.rate.limit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.rate.limit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.frontend.key_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.frontend.max_key_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.frontend.session_reuse_pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.backend.key_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.backend.max_key_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.cached_lookups\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.cache_misses\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.zlib_mem_usage\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.tasks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.run_queue\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.idle_pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.pxname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.svname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.qcur\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.qmax\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.scur\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.smax\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.slim\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.stot\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.bin\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.bout\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.dreq\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.dresp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.ereq\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.econ\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.eresp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.wretr\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.wredis\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.weight\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.act\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.bck\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.chkfail\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.chkdown\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.lastchg\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.downtime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.qlimit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.pid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.iid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.sid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.throttle\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.lbtot\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.tracked\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.component_type\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.rate.lim\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.rate.max\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.check.status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.check.code\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.check.duration\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.1xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.2xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.3xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.4xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.5xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.other\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hanafail\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.req.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.req.rate.max\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.req.tot\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.cli_abrt\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.srv_abrt\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.comp.in\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.comp.out\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.comp.byp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.comp.rsp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.last.sess\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.last.chk\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.last.agt\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.qtime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.ctime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.rtime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.ttime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.version\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.uptime.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.local_time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.regular\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.warning\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.msg\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.rollovers\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.flushes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.total.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.average.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.last.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.last_finished\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.connections.current\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.connections.available\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.connections.total_created\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.commits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.journaled.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.write_to_data_files.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.compression\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.commits_in_write_lock\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.early_commits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.dt.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.prep_log_buffer.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.write_to_journal.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.write_to_data_files.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.remap_private_view.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.commits.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.commits_in_write_lock.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.extra_info.heap_usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.extra_info.page_faults\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.network.in.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.network.out.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.network.requests\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.insert\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.query\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.update\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.delete\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.getmore\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.command\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.insert\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.query\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.update\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.delete\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.getmore\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.command\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.bits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.resident.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.virtual.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.mapped.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.mapped_with_journal.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.write_backs_queued\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.storage_engine.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.aborted.clients\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.aborted.connects\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.binlog.cache.disk_use\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.binlog.cache.use\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.bytes.received\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.bytes.sent\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.threads.cached\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.threads.created\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.threads.connected\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.threads.running\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.connections\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.created.tmp.disk_tables\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.created.tmp.files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.created.tmp.tables\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.delayed.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.delayed.insert_threads\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.delayed.writes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.flush_commands\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.max_used_connections\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.open.files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.open.streams\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.open.tables\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.opened_tables\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.active\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.accepts\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.handled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.dropped\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.requests\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.current\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.reading\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.writing\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.waiting\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.database.oid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.database.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.pid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.user.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.user.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.application_name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.client.address\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.client.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.client.port\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.backend_start\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.transaction_start\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.query_start\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.state_change\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.waiting\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.state\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.query\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.checkpoints.scheduled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.checkpoints.requested\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.checkpoints.times.write.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.checkpoints.times.sync.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.checkpoints\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.clean\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.clean_full\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.backend\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.backend_fsync\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.allocated\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.stats_reset\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.oid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.number_of_backends\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.transactions.commit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.transactions.rollback\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.blocks.read\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.blocks.hit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.blocks.time.read.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.blocks.time.write.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.returned\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.fetched\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.inserted\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.updated\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.deleted\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.conflicts\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.temporary.files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.temporary.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.deadlocks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.stats_reset\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.clients.connected\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.clients.longest_output_list\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.clients.biggest_input_buf\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.clients.blocked\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cluster.enabled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cpu.used.sys\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cpu.used.sys_children\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cpu.used.user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cpu.used.user_children\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.used.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.used.rss\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.used.peak\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.used.lua\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.allocator\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.loading\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.last_save.changes_since\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.bgsave.in_progress\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.last_save.time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.bgsave.last_status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.bgsave.last_time.sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.bgsave.current_time.sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.enabled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.rewrite.in_progress\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.rewrite.scheduled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.rewrite.last_time.sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.rewrite.current_time.sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.bgrewrite.last_status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.write.last_status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.role\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.connected_slaves\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.master_offset\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.backlog.active\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.backlog.size\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.backlog.first_byte_offset\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.backlog.histlen\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.version\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.git_sha1\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.git_dirty\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.build_id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.mode\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.os\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.arch_bits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.multiplexing_api\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.gcc_version\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.process_id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.run_id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.tcp_port\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.uptime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.hz\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.lru_clock\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.config_file\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.connections.received\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.connections.rejected\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.commands_processed\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.net.input.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.net.output.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.instantaneous.ops_per_sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.instantaneous.input_kbps\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.instantaneous.output_kbps\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.sync.full\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.sync.partial.ok\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.sync.partial.err\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.keys.expired\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.keys.evicted\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.keyspace.hits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.keyspace.misses\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.pubsub.channels\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.pubsub.patterns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.latest_fork_usec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.migrate_cached_sockets\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.keyspace.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.keyspace.avg_ttl\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.keyspace.keys\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.keyspace.expires\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.user.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.user.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.system.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.system.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.nice.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.nice.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.idle.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.idle.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.iowait.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.iowait.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.irq.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.irq.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.softirq.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.softirq.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.steal.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.steal.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.user.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.system.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.nice.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.idle.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.iowait.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.irq.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.softirq.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.steal.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.user.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.system.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.nice.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.idle.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.iowait.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.irq.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.softirq.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.steal.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.serial_number\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.read.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.write.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.read.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.write.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.read.time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.write.time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.io.time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.available\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.device_name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.mount_point\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.free_files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.used.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.used.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.total_files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.total_size.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.total_size.used\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.total_size.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.1\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.5\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.15\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.norm.1\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.norm.5\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.norm.15\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.used.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.used.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.actual.used.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.actual.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.actual.used.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.swap.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.swap.used.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.swap.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.swap.used.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.out.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.in.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.out.packets\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.in.packets\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.in.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.out.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.in.dropped\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.out.dropped\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.state\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.pid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.ppid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.pgid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cmdline\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.username\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.total.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.system\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.total.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.start_time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.memory.size\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.memory.rss.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.memory.rss.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.memory.share\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.fd.open\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.fd.limit.soft\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.fd.limit.hard\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.cfs.period.us\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.cfs.quota.us\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.cfs.shares\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.rt.period.us\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.rt.runtime.us\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.stats.periods\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.stats.throttled.periods\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.stats.throttled.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.total.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.stats.user.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.stats.system.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.percpu\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.mem.usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.mem.usage.max.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.mem.limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.mem.failures\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.memsw.usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.memsw.usage.max.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.memsw.limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.memsw.failures\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem.usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem.usage.max.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem.limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem.failures\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem_tcp.usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem_tcp.usage.max.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem_tcp.limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem_tcp.failures\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.active_anon.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.active_file.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.cache.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.hierarchical_memory_limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.hierarchical_memsw_limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.inactive_anon.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.inactive_file.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.mapped_file.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.page_faults\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.major_page_faults\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.pages_in\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.pages_out\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.rss.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.rss_huge.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.swap.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.unevictable.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.blkio.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.blkio.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.blkio.total.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.blkio.total.ios\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.approximate_data_size\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.latency.avg\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.ephemerals_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.followers\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.max_file_descriptor_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.latency.max\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.latency.min\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.num_alive_connections\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.open_file_descriptor_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.outstanding_requests\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.packets.received\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.packets.sent\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.pending_syncs\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.server_state\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.synced_followers\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.version\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.watch_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.znode_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}]", - "fieldFormatMap": "{\"system.process.cgroup.memory.memsw.limit.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem_tcp.limit.bytes\": {\"id\": \"bytes\"}, \"system.filesystem.used.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.blkio.total.bytes\": {\"id\": \"bytes\"}, \"system.core.system.pct\": {\"id\": \"percent\"}, \"mongodb.status.network.out.bytes\": {\"id\": \"bytes\"}, \"system.filesystem.free\": {\"id\": \"bytes\"}, \"@timestamp\": {\"id\": \"date\"}, \"system.cpu.nice.pct\": {\"id\": \"percent\"}, \"mongodb.status.network.in.bytes\": {\"id\": \"bytes\"}, \"system.memory.swap.used.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.stats.inactive_anon.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.memsw.usage.max.bytes\": {\"id\": \"bytes\"}, \"system.diskio.write.bytes\": {\"id\": \"bytes\"}, \"system.cpu.user.pct\": {\"id\": \"percent\"}, \"system.core.nice.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.stats.cache.bytes\": {\"id\": \"bytes\"}, \"system.cpu.steal.pct\": {\"id\": \"percent\"}, \"mongodb.status.extra_info.heap_usage.bytes\": {\"id\": \"bytes\"}, \"system.process.memory.rss.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.mem.usage.max.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.swap.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.rss.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.inactive_file.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.active_anon.bytes\": {\"id\": \"bytes\"}, \"system.cpu.system.pct\": {\"id\": \"percent\"}, \"haproxy.info.idle_pct\": {\"id\": \"percent\"}, \"system.cpu.idle.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.stats.hierarchical_memsw_limit.bytes\": {\"id\": \"bytes\"}, \"system.filesystem.available\": {\"id\": \"bytes\"}, \"system.core.irq.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.stats.unevictable.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.rss_huge.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem.usage.max.bytes\": {\"id\": \"bytes\"}, \"system.cpu.softirq.pct\": {\"id\": \"percent\"}, \"system.memory.total\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem.usage.bytes\": {\"id\": \"bytes\"}, \"system.filesystem.used.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem_tcp.usage.bytes\": {\"id\": \"bytes\"}, \"system.core.idle.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.mem.limit.bytes\": {\"id\": \"bytes\"}, \"system.core.user.pct\": {\"id\": \"percent\"}, \"system.process.memory.rss.bytes\": {\"id\": \"bytes\"}, \"system.network.out.bytes\": {\"id\": \"bytes\"}, \"haproxy.info.mem_max_bytes\": {\"id\": \"bytes\"}, \"mysql.status.bytes.sent\": {\"id\": \"bytes\"}, \"system.core.iowait.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.stats.mapped_file.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.hierarchical_memory_limit.bytes\": {\"id\": \"bytes\"}, \"system.memory.swap.total\": {\"id\": \"bytes\"}, \"system.memory.used.bytes\": {\"id\": \"bytes\"}, \"system.memory.used.pct\": {\"id\": \"percent\"}, \"system.process.memory.share\": {\"id\": \"bytes\"}, \"system.process.cpu.total.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.mem.usage.bytes\": {\"id\": \"bytes\"}, \"system.filesystem.total\": {\"id\": \"bytes\"}, \"system.memory.free\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.active_file.bytes\": {\"id\": \"bytes\"}, \"system.core.steal.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.kmem.limit.bytes\": {\"id\": \"bytes\"}, \"system.diskio.read.bytes\": {\"id\": \"bytes\"}, \"system.memory.swap.free\": {\"id\": \"bytes\"}, \"system.core.softirq.pct\": {\"id\": \"percent\"}, \"system.network.in.bytes\": {\"id\": \"bytes\"}, \"mysql.status.bytes.received\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem_tcp.usage.max.bytes\": {\"id\": \"bytes\"}, \"system.fsstat.total_size.free\": {\"id\": \"bytes\"}, \"system.fsstat.total_size.total\": {\"id\": \"bytes\"}, \"system.fsstat.total_size.used\": {\"id\": \"bytes\"}, \"system.process.memory.size\": {\"id\": \"bytes\"}, \"system.cpu.iowait.pct\": {\"id\": \"percent\"}, \"system.memory.swap.used.bytes\": {\"id\": \"bytes\"}, \"system.cpu.irq.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.memsw.usage.bytes\": {\"id\": \"bytes\"}}", + "fields": "[{\"count\": 0, \"name\": \"beat.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"beat.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"@timestamp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"tags\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"fields\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"metricset.module\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"metricset.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"metricset.host\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"metricset.rtt\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"type\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.total_accesses\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.total_kbytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.requests_per_sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.bytes_per_sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.bytes_per_request\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.workers.busy\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.workers.idle\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.uptime.server_uptime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.uptime.uptime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.load\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.system\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.children_user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.cpu.children_system\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.connections.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.connections.async.writing\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.connections.async.keep_alive\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.connections.async.closing\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.load.1\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.load.5\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.load.15\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.starting_up\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.reading_request\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.sending_reply\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.keepalive\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.dns_lookup\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.closing_connection\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.logging\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.gracefully_finishing\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.idle_cleanup\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.open_slot\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.waiting_for_connection\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"apache.status.scoreboard.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.started\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.closed\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.running\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.skipped\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.files.open\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.harvesters.files.truncated\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.prospectors.log_files.renamed\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.prospectors.log_files.truncated\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.registrar.states.update\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.registrar.states.cleanup\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.registrar.states.current\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.filebeat.registrar.writes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.events.ack\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.events.not_ack\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.read.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.read.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.write.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.output.elasticsearch.write.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"beats.libbeat.publisher.events.published\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.run\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.type\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.summary.alloc_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.summary.alloc_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.summary.inuse_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.summary.inuse_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.package\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.file\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.self.alloc_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.self.alloc_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.self.inuse_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.self.inuse_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.total.alloc_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.total.alloc_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.total.inuse_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.total.inuse_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.children.alloc_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.children.alloc_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.children.inuse_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.function.children.inuse_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.parent.package\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.parent.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.parent.file\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.child.package\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.child.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.child.file\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.stats.alloc_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.stats.alloc_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.stats.inuse_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.edge_allocation.stats.inuse_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.allocation.package\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.allocation.function\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.allocation.file\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.allocation.line\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.allocation.address\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.allocation.stats.alloc_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.allocation.stats.alloc_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.allocation.stats.inuse_objects.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memprof.allocation.stats.inuse_space.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.type\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.next_gc_limit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.gc_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.gc_total_pause.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.allocations.mallocs\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.allocations.frees\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.allocations.objects\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.allocations.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.allocations.allocated\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.allocations.idle\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.allocations.active\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.system.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.system.obtained\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.system.stack\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.system.released\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.size\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.mallocs\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.frees\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.run\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.start\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.end\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"goprof.memstats.duration.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.nb_proc\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.process_num\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.pid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.uptime_sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.mem_max_bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ulimit_n\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.compress.bps.in\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.compress.bps.out\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.compress.bps.rate_limit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.conn.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.conn.rate.limit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.curr.conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.curr.ssl_conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.cum.conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.cum.req\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.cum.ssl_conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.hard_conn\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.ssl.conns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.ssl.rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.sock\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.conn.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.conn.rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.sess_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.pipes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.max.zlib_mem_usage\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.pipes.used\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.pipes.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.sess.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.sess.rate.limit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.rate.limit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.frontend.key_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.frontend.max_key_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.frontend.session_reuse_pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.backend.key_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.backend.max_key_rate\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.cached_lookups\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.ssl.cache_misses\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.zlib_mem_usage\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.tasks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.run_queue\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.info.idle_pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.pxname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.svname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.qcur\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.qmax\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.scur\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.smax\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.slim\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.stot\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.bin\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.bout\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.dreq\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.dresp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.ereq\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.econ\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.eresp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.wretr\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.wredis\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.weight\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.act\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.bck\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.chkfail\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.chkdown\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.lastchg\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.downtime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.qlimit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.pid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.iid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.sid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.throttle\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.lbtot\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.tracked\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.component_type\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.rate.lim\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.rate.max\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.check.status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.check.code\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.check.duration\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.1xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.2xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.3xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.4xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.5xx\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hrsp.other\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.hanafail\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.req.rate.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.req.rate.max\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.req.tot\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.cli_abrt\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.srv_abrt\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.comp.in\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.comp.out\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.comp.byp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.comp.rsp\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.last.sess\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.last.chk\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.last.agt\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.qtime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.ctime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.rtime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"haproxy.stat.ttime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.version\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.uptime.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.local_time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.regular\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.warning\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.msg\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.asserts.rollovers\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.flushes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.total.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.average.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.last.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.background_flushing.last_finished\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.connections.current\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.connections.available\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.connections.total_created\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.commits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.journaled.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.write_to_data_files.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.compression\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.commits_in_write_lock\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.early_commits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.dt.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.prep_log_buffer.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.write_to_journal.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.write_to_data_files.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.remap_private_view.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.commits.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.journaling.times.commits_in_write_lock.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.extra_info.heap_usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.extra_info.page_faults\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.network.in.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.network.out.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.network.requests\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.insert\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.query\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.update\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.delete\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.getmore\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters.command\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.insert\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.query\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.update\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.delete\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.getmore\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.opcounters_replicated.command\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.bits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.resident.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.virtual.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.mapped.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.memory.mapped_with_journal.mb\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.write_backs_queued\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"mongodb.status.storage_engine.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.aborted.clients\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.aborted.connects\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.binlog.cache.disk_use\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.binlog.cache.use\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.bytes.received\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.bytes.sent\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.threads.cached\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.threads.created\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.threads.connected\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.threads.running\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.connections\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.created.tmp.disk_tables\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.created.tmp.files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.created.tmp.tables\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.delayed.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.delayed.insert_threads\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.delayed.writes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.flush_commands\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.max_used_connections\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.open.files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.open.streams\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.open.tables\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"mysql.status.opened_tables\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.active\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.accepts\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.handled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.dropped\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.requests\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.current\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.reading\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.writing\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"nginx.stubstatus.waiting\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.database.oid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.database.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.pid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.user.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.user.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.application_name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.client.address\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.client.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.client.port\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.backend_start\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.transaction_start\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.query_start\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.state_change\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.waiting\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.state\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.activity.query\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.checkpoints.scheduled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.checkpoints.requested\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.checkpoints.times.write.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.checkpoints.times.sync.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.checkpoints\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.clean\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.clean_full\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.backend\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.backend_fsync\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.buffers.allocated\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.bgwriter.stats_reset\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.oid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.number_of_backends\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.transactions.commit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.transactions.rollback\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.blocks.read\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.blocks.hit\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.blocks.time.read.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.blocks.time.write.ms\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.returned\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.fetched\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.inserted\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.updated\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.rows.deleted\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.conflicts\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.temporary.files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.temporary.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.deadlocks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"postgresql.database.stats_reset\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.clients.connected\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.clients.longest_output_list\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.clients.biggest_input_buf\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.clients.blocked\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cluster.enabled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cpu.used.sys\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cpu.used.sys_children\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cpu.used.user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.cpu.used.user_children\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.used.value\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.used.rss\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.used.peak\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.used.lua\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.memory.allocator\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.loading\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.last_save.changes_since\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.bgsave.in_progress\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.last_save.time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.bgsave.last_status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.bgsave.last_time.sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.rdb.bgsave.current_time.sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.enabled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.rewrite.in_progress\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.rewrite.scheduled\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.rewrite.last_time.sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.rewrite.current_time.sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.bgrewrite.last_status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.persistence.aof.write.last_status\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.role\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.connected_slaves\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.master_offset\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.backlog.active\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.backlog.size\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.backlog.first_byte_offset\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.replication.backlog.histlen\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.version\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.git_sha1\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.git_dirty\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.build_id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.mode\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.os\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.arch_bits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.multiplexing_api\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.gcc_version\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.process_id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.run_id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.tcp_port\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.uptime\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.hz\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.lru_clock\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.server.config_file\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.connections.received\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.connections.rejected\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.commands_processed\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.net.input.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.net.output.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.instantaneous.ops_per_sec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.instantaneous.input_kbps\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.instantaneous.output_kbps\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.sync.full\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.sync.partial.ok\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.sync.partial.err\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.keys.expired\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.keys.evicted\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.keyspace.hits\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.keyspace.misses\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.pubsub.channels\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.pubsub.patterns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.latest_fork_usec\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.info.stats.migrate_cached_sockets\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.keyspace.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.keyspace.avg_ttl\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.keyspace.keys\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"redis.keyspace.expires\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.user.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.user.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.system.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.system.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.nice.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.nice.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.idle.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.idle.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.iowait.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.iowait.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.irq.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.irq.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.softirq.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.softirq.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.steal.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.core.steal.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.user.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.system.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.nice.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.idle.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.iowait.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.irq.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.softirq.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.steal.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.user.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.system.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.nice.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.idle.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.iowait.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.irq.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.softirq.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.cpu.steal.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.serial_number\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.read.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.write.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.read.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.write.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.read.time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.write.time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.diskio.io.time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.available\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.device_name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.mount_point\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.free_files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.used.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.filesystem.used.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.total_files\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.total_size.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.total_size.used\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.fsstat.total_size.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.1\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.5\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.15\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.norm.1\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.norm.5\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.load.norm.15\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.used.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.used.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.actual.used.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.actual.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.actual.used.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.swap.total\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.swap.used.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.swap.free\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.memory.swap.used.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.out.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.in.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.out.packets\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.in.packets\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.in.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.out.errors\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.in.dropped\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.network.out.dropped\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.name\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.state\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.pid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.ppid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.pgid\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cmdline\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.username\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.user\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.total.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.system\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.total.ticks\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cpu.start_time\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"date\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.memory.size\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.memory.rss.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.memory.rss.pct\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.memory.share\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.fd.open\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.fd.limit.soft\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.fd.limit.hard\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.cfs.period.us\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.cfs.quota.us\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.cfs.shares\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.rt.period.us\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.rt.runtime.us\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.stats.periods\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.stats.throttled.periods\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpu.stats.throttled.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.total.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.stats.user.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.stats.system.ns\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.cpuacct.percpu\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.mem.usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.mem.usage.max.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.mem.limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.mem.failures\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.memsw.usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.memsw.usage.max.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.memsw.limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.memsw.failures\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem.usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem.usage.max.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem.limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem.failures\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem_tcp.usage.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem_tcp.usage.max.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem_tcp.limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.kmem_tcp.failures\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.active_anon.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.active_file.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.cache.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.hierarchical_memory_limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.hierarchical_memsw_limit.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.inactive_anon.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.inactive_file.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.mapped_file.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.page_faults\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.major_page_faults\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.pages_in\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.pages_out\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.rss.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.rss_huge.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.swap.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.memory.stats.unevictable.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.blkio.id\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.blkio.path\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.blkio.total.bytes\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"system.process.cgroup.blkio.total.ios\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.hostname\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.approximate_data_size\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.latency.avg\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.ephemerals_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.followers\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.max_file_descriptor_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.latency.max\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.latency.min\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.num_alive_connections\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.open_file_descriptor_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.outstanding_requests\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.packets.received\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.packets.sent\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.pending_syncs\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.server_state\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.synced_followers\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.version\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"string\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.watch_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}, {\"count\": 0, \"name\": \"zookeeper.mntr.znode_count\", \"analyzed\": false, \"indexed\": true, \"doc_values\": true, \"type\": \"number\", \"scripted\": false}]", + "fieldFormatMap": "{\"system.filesystem.used.pct\": {\"id\": \"percent\"}, \"system.cpu.nice.pct\": {\"id\": \"percent\"}, \"system.process.memory.share\": {\"id\": \"bytes\"}, \"goprof.memprof.edge_allocation.stats.alloc_space.count\": {\"id\": \"bytes\"}, \"system.core.nice.pct\": {\"id\": \"percent\"}, \"goprof.memprof.function.total.alloc_space.count\": {\"id\": \"bytes\"}, \"goprof.memstats.system.total\": {\"id\": \"bytes\"}, \"goprof.memstats.system.stack\": {\"id\": \"bytes\"}, \"system.cpu.irq.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.stats.cache.bytes\": {\"id\": \"bytes\"}, \"goprof.memstats.allocations.idle\": {\"id\": \"bytes\"}, \"system.core.idle.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.stats.active_anon.bytes\": {\"id\": \"bytes\"}, \"system.core.user.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.mem.usage.max.bytes\": {\"id\": \"bytes\"}, \"system.network.in.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.mapped_file.bytes\": {\"id\": \"bytes\"}, \"goprof.memstats.next_gc_limit\": {\"id\": \"bytes\"}, \"goprof.memprof.edge_allocation.stats.inuse_space.count\": {\"id\": \"bytes\"}, \"system.memory.used.pct\": {\"id\": \"percent\"}, \"system.process.cpu.total.pct\": {\"id\": \"percent\"}, \"system.filesystem.total\": {\"id\": \"bytes\"}, \"system.memory.free\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.active_file.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem.limit.bytes\": {\"id\": \"bytes\"}, \"system.memory.total\": {\"id\": \"bytes\"}, \"system.memory.swap.free\": {\"id\": \"bytes\"}, \"goprof.memstats.allocations.total\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.hierarchical_memsw_limit.bytes\": {\"id\": \"bytes\"}, \"system.fsstat.total_size.total\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem_tcp.limit.bytes\": {\"id\": \"bytes\"}, \"system.core.system.pct\": {\"id\": \"percent\"}, \"system.filesystem.free\": {\"id\": \"bytes\"}, \"@timestamp\": {\"id\": \"date\"}, \"system.process.cgroup.memory.stats.inactive_anon.bytes\": {\"id\": \"bytes\"}, \"mysql.status.bytes.received\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem.usage.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.memsw.limit.bytes\": {\"id\": \"bytes\"}, \"haproxy.info.idle_pct\": {\"id\": \"percent\"}, \"goprof.memstats.system.obtained\": {\"id\": \"bytes\"}, \"goprof.memprof.function.children.alloc_space.count\": {\"id\": \"bytes\"}, \"goprof.memprof.function.self.alloc_space.count\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem_tcp.usage.bytes\": {\"id\": \"bytes\"}, \"goprof.memprof.function.self.inuse_space.count\": {\"id\": \"bytes\"}, \"system.core.iowait.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.stats.hierarchical_memory_limit.bytes\": {\"id\": \"bytes\"}, \"system.memory.used.bytes\": {\"id\": \"bytes\"}, \"system.diskio.read.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.mem.limit.bytes\": {\"id\": \"bytes\"}, \"goprof.memprof.summary.alloc_space.count\": {\"id\": \"bytes\"}, \"system.fsstat.total_size.used\": {\"id\": \"bytes\"}, \"system.memory.swap.total\": {\"id\": \"bytes\"}, \"goprof.memprof.function.children.inuse_space.count\": {\"id\": \"bytes\"}, \"mongodb.status.network.out.bytes\": {\"id\": \"bytes\"}, \"mongodb.status.network.in.bytes\": {\"id\": \"bytes\"}, \"system.memory.swap.used.pct\": {\"id\": \"percent\"}, \"system.cpu.user.pct\": {\"id\": \"percent\"}, \"goprof.memprof.summary.inuse_space.count\": {\"id\": \"bytes\"}, \"system.cpu.system.pct\": {\"id\": \"percent\"}, \"system.core.irq.pct\": {\"id\": \"percent\"}, \"system.cpu.softirq.pct\": {\"id\": \"percent\"}, \"system.process.memory.rss.pct\": {\"id\": \"percent\"}, \"mysql.status.bytes.sent\": {\"id\": \"bytes\"}, \"goprof.memstats.size\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.mem.usage.bytes\": {\"id\": \"bytes\"}, \"system.core.steal.pct\": {\"id\": \"percent\"}, \"goprof.memstats.allocations.active\": {\"id\": \"bytes\"}, \"system.cpu.steal.pct\": {\"id\": \"percent\"}, \"system.process.cgroup.memory.kmem_tcp.usage.max.bytes\": {\"id\": \"bytes\"}, \"system.cpu.iowait.pct\": {\"id\": \"percent\"}, \"system.memory.swap.used.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.rss_huge.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.memsw.usage.bytes\": {\"id\": \"bytes\"}, \"system.filesystem.used.bytes\": {\"id\": \"bytes\"}, \"system.diskio.write.bytes\": {\"id\": \"bytes\"}, \"system.process.memory.size\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.inactive_file.bytes\": {\"id\": \"bytes\"}, \"mongodb.status.extra_info.heap_usage.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.swap.bytes\": {\"id\": \"bytes\"}, \"goprof.memprof.allocation.stats.alloc_space.count\": {\"id\": \"bytes\"}, \"system.cpu.idle.pct\": {\"id\": \"percent\"}, \"system.filesystem.available\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.unevictable.bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.kmem.usage.max.bytes\": {\"id\": \"bytes\"}, \"goprof.memstats.allocations.allocated\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.stats.rss.bytes\": {\"id\": \"bytes\"}, \"system.process.memory.rss.bytes\": {\"id\": \"bytes\"}, \"haproxy.info.mem_max_bytes\": {\"id\": \"bytes\"}, \"system.process.cgroup.memory.memsw.usage.max.bytes\": {\"id\": \"bytes\"}, \"system.network.out.bytes\": {\"id\": \"bytes\"}, \"goprof.memprof.allocation.stats.inuse_space.count\": {\"id\": \"bytes\"}, \"goprof.memstats.system.released\": {\"id\": \"bytes\"}, \"system.process.cgroup.blkio.total.bytes\": {\"id\": \"bytes\"}, \"goprof.memprof.function.total.inuse_space.count\": {\"id\": \"bytes\"}, \"system.core.softirq.pct\": {\"id\": \"percent\"}, \"system.fsstat.total_size.free\": {\"id\": \"bytes\"}}", "timeFieldName": "@timestamp", "title": "metricbeat-*" } \ No newline at end of file diff --git a/metricbeat/etc/kibana/search/go-Process-Memory-Profile-Active-Allocations.json b/metricbeat/etc/kibana/search/go-Process-Memory-Profile-Active-Allocations.json new file mode 100644 index 000000000000..254cd3c90d27 --- /dev/null +++ b/metricbeat/etc/kibana/search/go-Process-Memory-Profile-Active-Allocations.json @@ -0,0 +1,20 @@ +{ + "sort": [ + "@timestamp", + "desc" + ], + "hits": 0, + "description": "", + "title": "go Process Memory Profile Active Allocations", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"index\":\"metricbeat-*\",\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"metricset.module:goprof AND metricset.name:memprof AND type:allocation AND -goprof.memprof.allocation.stats.inuse_objects.count:0\"}},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":true,\"index\":\"metricbeat-*\",\"key\":\"metricset.module\",\"negate\":false,\"value\":\"goprof\"},\"query\":{\"match\":{\"metricset.module\":{\"query\":\"goprof\",\"type\":\"phrase\"}}}}],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}" + }, + "columns": [ + "goprof.memprof.allocation.function", + "goprof.memprof.allocation.stats.inuse_objects.count", + "goprof.memprof.allocation.package", + "goprof.memprof.allocation.file", + "goprof.memprof.allocation.line" + ] +} \ No newline at end of file diff --git a/metricbeat/etc/kibana/visualization/Container-Block-IO.json b/metricbeat/etc/kibana/visualization/Container-Block-IO.json deleted file mode 100644 index 1116e649a0fe..000000000000 --- a/metricbeat/etc/kibana/visualization/Container-Block-IO.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "visState": "{\"aggs\":[{\"enabled\":true,\"id\":\"1\",\"params\":{\"customLabel\":\"Total\",\"field\":\"system.process.cgroup.blkio.total.bytes\"},\"schema\":\"metric\",\"type\":\"avg\"},{\"enabled\":true,\"id\":\"2\",\"params\":{\"customLabel\":\"I/O\",\"field\":\"system.process.cgroup.blkio.total.ios\"},\"schema\":\"metric\",\"type\":\"avg\"},{\"enabled\":true,\"id\":\"3\",\"params\":{\"customLabel\":\"Container ID\",\"field\":\"system.process.cgroup.id\",\"order\":\"desc\",\"orderBy\":\"1\",\"size\":5},\"schema\":\"bucket\",\"type\":\"terms\"},{\"enabled\":true,\"id\":\"4\",\"params\":{\"customLabel\":\"Process name\",\"field\":\"system.process.name\",\"order\":\"desc\",\"orderBy\":\"1\",\"size\":5},\"schema\":\"bucket\",\"type\":\"terms\"}],\"listeners\":{},\"params\":{\"perPage\":10,\"showMeticsAtAllLevels\":false,\"showPartialRows\":false,\"showTotal\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"totalFunc\":\"sum\"},\"title\":\"Container Block IO\",\"type\":\"table\"}", - "description": "", - "title": "Container Block IO", - "uiStateJSON": "{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}", - "version": 1, - "kibanaSavedObjectMeta": { - "searchSourceJSON": "{\"index\":\"metricbeat-*\",\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"filter\":[]}" - } -} \ No newline at end of file diff --git a/metricbeat/etc/kibana/visualization/Container-CPU-usage.json b/metricbeat/etc/kibana/visualization/Container-CPU-usage.json deleted file mode 100644 index cb9b884c4c08..000000000000 --- a/metricbeat/etc/kibana/visualization/Container-CPU-usage.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "visState": "{\"title\":\"Container CPU usage\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.cpuacct.stats.user.ns\",\"customLabel\":\"CPU user\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.cpu.cfs.quota.us\",\"customLabel\":\"CPU quota\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"system.process.cgroup.id\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Counter ID\"}},{\"id\":\"4\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.cpu.stats.throttled.ns\",\"customLabel\":\"CPU throttling\"}},{\"id\":\"5\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.cpuacct.stats.system.ns\",\"customLabel\":\"CPU kernel\"}},{\"id\":\"6\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"system.process.name\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Process name\"}}],\"listeners\":{}}", - "description": "", - "title": "Container CPU usage", - "uiStateJSON": "{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}", - "version": 1, - "kibanaSavedObjectMeta": { - "searchSourceJSON": "{\"index\":\"metricbeat-*\",\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"filter\":[]}" - } -} \ No newline at end of file diff --git a/metricbeat/etc/kibana/visualization/Container-Memory-stats.json b/metricbeat/etc/kibana/visualization/Container-Memory-stats.json deleted file mode 100644 index 37c54439de95..000000000000 --- a/metricbeat/etc/kibana/visualization/Container-Memory-stats.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "visState": "{\"title\":\"Container Memory stats\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showMeticsAtAllLevels\":false,\"showPartialRows\":false,\"showTotal\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"totalFunc\":\"sum\"},\"aggs\":[{\"id\":\"13\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.mem.usage.bytes\",\"customLabel\":\"Usage\"}},{\"id\":\"14\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.mem.usage.max.bytes\",\"customLabel\":\"Max usage\"}},{\"id\":\"1\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.stats.page_faults\",\"customLabel\":\"Page faults\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.stats.pages_in\",\"customLabel\":\"Pages in memory\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.stats.pages_out\",\"customLabel\":\"Pages out of memory\"}},{\"id\":\"4\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"system.process.cgroup.id\",\"size\":50,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Container ID\"}},{\"id\":\"5\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.stats.inactive_file.bytes\",\"customLabel\":\"Inactive files\"}},{\"id\":\"6\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.stats.major_page_faults\",\"customLabel\":\"# Major page faults\"}},{\"id\":\"8\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"system.process.name\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Process name\"}},{\"id\":\"12\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.mem.failures\",\"customLabel\":\"Failures\"}},{\"id\":\"10\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.kmem_tcp.usage.bytes\",\"customLabel\":\"TCP buffers\"}},{\"id\":\"11\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.stats.rss_huge.bytes\",\"customLabel\":\"Huge pages\"}},{\"id\":\"7\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.stats.rss.bytes\",\"customLabel\":\"Swap caches\"}},{\"id\":\"15\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.memory.stats.swap.bytes\",\"customLabel\":\"Swap usage\"}},{\"id\":\"16\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"system.process.cgroup.blkio.total.ios\",\"customLabel\":\"Block I/O\"}}],\"listeners\":{}}", - "description": "", - "title": "Container Memory stats", - "uiStateJSON": "{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}", - "version": 1, - "kibanaSavedObjectMeta": { - "searchSourceJSON": "{\"index\":\"metricbeat-*\",\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"filter\":[]}" - } -} \ No newline at end of file diff --git a/metricbeat/etc/kibana/visualization/System-Navigation.json b/metricbeat/etc/kibana/visualization/System-Navigation.json index aea2d7ef55c0..e10eba66f2c6 100644 --- a/metricbeat/etc/kibana/visualization/System-Navigation.json +++ b/metricbeat/etc/kibana/visualization/System-Navigation.json @@ -1,5 +1,5 @@ { - "visState": "{\"title\":\"System Navigation\",\"type\":\"markdown\",\"params\":{\"markdown\":\"- [Overview](/#/dashboard/Metricbeat-system-overview)\\n\\n- [Load/CPU](/#/dashboard/Metricbeat-cpu)\\n\\n- [Memory](/#/dashboard/Metricbeat-memory)\\n\\n- [Processes](/#/dashboard/Metricbeat-processes)\\n\\n- [Network](/#/dashboard/Metricbeat-network)\\n\\n- [Filesystem](/#/dashboard/Metricbeat-filesystem)\\n\\n- [Filesystem per Host](/#/dashboard/Metricbeat-filesystem-per-Host)\\n\\n- [CPU/Memory per container](/#/dashboard/CPU-slash-Memory-per-container)\"},\"aggs\":[],\"listeners\":{}}", + "visState": "{\"title\":\"System Navigation\",\"type\":\"markdown\",\"params\":{\"markdown\":\"- [Overview](/#/dashboard/Metricbeat-system-overview)\\n\\n- [Load/CPU](/#/dashboard/Metricbeat-cpu)\\n\\n- [Memory](/#/dashboard/Metricbeat-memory)\\n\\n- [Processes](/#/dashboard/Metricbeat-processes)\\n\\n- [Network](/#/dashboard/Metricbeat-network)\\n\\n- [Filesystem](/#/dashboard/Metricbeat-filesystem)\\n\\n- [Filesystem per Host](/#/dashboard/Metricbeat-filesystem-per-Host)\"},\"aggs\":[],\"listeners\":{}}", "description": "", "title": "System Navigation", "uiStateJSON": "{}", diff --git a/metricbeat/etc/kibana/visualization/go-Process-Allocations-Rate.json b/metricbeat/etc/kibana/visualization/go-Process-Allocations-Rate.json new file mode 100644 index 000000000000..90dad0f9613c --- /dev/null +++ b/metricbeat/etc/kibana/visualization/go-Process-Allocations-Rate.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"type\":\"timelion\",\"title\":\"go Process Allocations Rate\",\"params\":{\"expression\":\".es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"avg:goprof.memstats.allocations.total\\\", kibana=true).derivative().bars().label(\\\"Bytes Allocated/min\\\"),.es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.allocations.allocated\\\", kibana=true).label(\\\"Bytes Allocated (Max)\\\"),.es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.next_gc_limit\\\", kibana=true).label(\\\"GC Limit\\\")\",\"interval\":\"1m\"}}", + "description": "", + "title": "go Process Allocations Rate", + "uiStateJSON": "{}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{}" + } +} \ No newline at end of file diff --git a/metricbeat/etc/kibana/visualization/go-Process-Memory-Overview.json b/metricbeat/etc/kibana/visualization/go-Process-Memory-Overview.json new file mode 100644 index 000000000000..354cd7818d73 --- /dev/null +++ b/metricbeat/etc/kibana/visualization/go-Process-Memory-Overview.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"title\":\"go Process Memory Overview\",\"type\":\"timelion\",\"params\":{\"expression\":\".es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"sum:goprof.memstats.duration.ns\\\",timefield=\\\"goprof.memstats.start\\\", kibana=true).divide(1000).label(\\\"GC cycle - duration (us)\\\").bars().yaxis(2,label=\\\"duration [us]\\\").color(\\\"#e6e6e6\\\"), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.system.total\\\", kibana=true).label(\\\"System Memory\\\").yaxis(1,label=\\\"bytes\\\",position=left), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.next_gc_limit\\\", kibana=true).movingaverage(10).label(\\\"GC Limit\\\"), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.allocations.allocated\\\", kibana=true).mvavg(10).label(\\\"Bytes Allocated (Max)\\\"), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"min:goprof.memstats.allocations.allocated\\\", kibana=true).mvavg(10).label(\\\"Bytes Allocated (Min)\\\")\",\"interval\":\"1m\"},\"aggs\":[],\"listeners\":{}}", + "description": "", + "title": "go Process Memory Overview", + "uiStateJSON": "{}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"filter\":[]}" + } +} \ No newline at end of file diff --git a/metricbeat/etc/kibana/visualization/go-Process-Memory-Profile-Top-Active-Allocations.json b/metricbeat/etc/kibana/visualization/go-Process-Memory-Profile-Top-Active-Allocations.json new file mode 100644 index 000000000000..81e8696c2021 --- /dev/null +++ b/metricbeat/etc/kibana/visualization/go-Process-Memory-Profile-Top-Active-Allocations.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"title\":\"go Process Memory Profile Top Active Allocations\",\"type\":\"line\",\"params\":{\"shareYAxis\":true,\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"bottom\",\"showCircles\":true,\"smoothLines\":false,\"interpolate\":\"linear\",\"scale\":\"linear\",\"drawLinesBetweenPoints\":true,\"radiusRatio\":9,\"times\":[],\"addTimeMarker\":true,\"defaultYExtents\":true,\"setYExtents\":false,\"yAxis\":{}},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"goprof.memprof.function.self.stats.inuse_objects.count\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"date_histogram\",\"schema\":\"segment\",\"params\":{\"field\":\"@timestamp\",\"interval\":\"auto\",\"customInterval\":\"2h\",\"min_doc_count\":1,\"extended_bounds\":{}}},{\"id\":\"4\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"split\",\"params\":{\"field\":\"goprof.memprof.function.package\",\"size\":3,\"order\":\"desc\",\"orderBy\":\"1\",\"row\":true}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"goprof.memprof.function.name\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}", + "description": "", + "title": "go Process Memory Profile Top Active Allocations", + "uiStateJSON": "{\"vis\":{\"legendOpen\":true},\"spy\":{\"mode\":{\"name\":null,\"fill\":false}}}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"index\":\"metricbeat-*\",\"query\":{\"query_string\":{\"query\":\"metricset.module:goprof AND metricset.name:memprof AND type:function AND -goprof.memprof.function.self.stats.inuse_objects.count:0\",\"analyze_wildcard\":true}},\"filter\":[]}" + } +} \ No newline at end of file diff --git a/metricbeat/etc/kibana/visualization/go-Process-Memory-Profile-Top-Active-Indirect-Allocations.json b/metricbeat/etc/kibana/visualization/go-Process-Memory-Profile-Top-Active-Indirect-Allocations.json new file mode 100644 index 000000000000..9773abfe59a3 --- /dev/null +++ b/metricbeat/etc/kibana/visualization/go-Process-Memory-Profile-Top-Active-Indirect-Allocations.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"title\":\"go Process Memory Profile Top Active Indirect Allocations\",\"type\":\"line\",\"params\":{\"shareYAxis\":true,\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"showCircles\":true,\"smoothLines\":false,\"interpolate\":\"linear\",\"scale\":\"linear\",\"drawLinesBetweenPoints\":true,\"radiusRatio\":9,\"times\":[],\"addTimeMarker\":false,\"defaultYExtents\":false,\"setYExtents\":false,\"yAxis\":{}},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"goprof.memprof.function.children.stats.inuse_objects.count\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"date_histogram\",\"schema\":\"segment\",\"params\":{\"field\":\"@timestamp\",\"interval\":\"auto\",\"customInterval\":\"2h\",\"min_doc_count\":1,\"extended_bounds\":{}}},{\"id\":\"4\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"split\",\"params\":{\"field\":\"goprof.memprof.function.package\",\"size\":3,\"order\":\"desc\",\"orderBy\":\"1\",\"row\":true}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"goprof.memprof.function.name\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}", + "description": "", + "title": "go Process Memory Profile Top Active Indirect Allocations", + "uiStateJSON": "{}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"index\":\"metricbeat-*\",\"query\":{\"query_string\":{\"query\":\"metricset.module:goprof AND metricset.name:memprof AND type:function AND -goprof.memprof.function.children.stats.inuse_objects.count:0\",\"analyze_wildcard\":true}},\"filter\":[]}" + } +} \ No newline at end of file diff --git a/metricbeat/etc/kibana/visualization/go-Process-Object-count.json b/metricbeat/etc/kibana/visualization/go-Process-Object-count.json new file mode 100644 index 000000000000..b258f831b6fa --- /dev/null +++ b/metricbeat/etc/kibana/visualization/go-Process-Object-count.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"title\":\"go Process Object count\",\"type\":\"timelion\",\"params\":{\"expression\":\".es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"avg:goprof.memstats.allocations.objects\\\", kibana=true).mvavg(10).label(\\\"Object count (avg)\\\"), .subtract(.es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"avg:goprof.memstats.allocations.mallocs\\\", kibana=true).derivative(), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"avg:goprof.memstats.allocations.frees\\\", kibana=true).derivative()).bars().label(\\\"Object allocation rate\\\")\",\"interval\":\"1m\"},\"aggs\":[],\"listeners\":{}}", + "description": "", + "title": "go Process Object count", + "uiStateJSON": "{}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"filter\":[]}" + } +} \ No newline at end of file diff --git a/metricbeat/include/list.go b/metricbeat/include/list.go index 2ba265d37c37..a66c48dfe928 100644 --- a/metricbeat/include/list.go +++ b/metricbeat/include/list.go @@ -13,6 +13,9 @@ import ( _ "github.com/elastic/beats/metricbeat/module/beats" _ "github.com/elastic/beats/metricbeat/module/beats/filebeat" _ "github.com/elastic/beats/metricbeat/module/beats/libbeat" + _ "github.com/elastic/beats/metricbeat/module/goprof" + _ "github.com/elastic/beats/metricbeat/module/goprof/memprof" + _ "github.com/elastic/beats/metricbeat/module/goprof/memstats" _ "github.com/elastic/beats/metricbeat/module/haproxy" _ "github.com/elastic/beats/metricbeat/module/haproxy/info" _ "github.com/elastic/beats/metricbeat/module/haproxy/stat" diff --git a/metricbeat/metricbeat.full.yml b/metricbeat/metricbeat.full.yml index 8283965cfd84..d86dda87d773 100644 --- a/metricbeat/metricbeat.full.yml +++ b/metricbeat/metricbeat.full.yml @@ -78,6 +78,13 @@ metricbeat.modules: #vars_path: /debug/vars +#------------------------------- goprof Module ------------------------------- +#- module: goprof + #metricsets: ["memstats", "memprof"] + #enabled: true + #period: 30s + #hosts: ["localhost:6060"] + #------------------------------- haproxy Module ------------------------------ #- module: haproxy #metricsets: [stat, info] diff --git a/metricbeat/metricbeat.template-es2x.json b/metricbeat/metricbeat.template-es2x.json index 5f3ae3b2615c..9aa312d6fac5 100644 --- a/metricbeat/metricbeat.template-es2x.json +++ b/metricbeat/metricbeat.template-es2x.json @@ -301,6 +301,390 @@ } } }, + "goprof": { + "properties": { + "memprof": { + "properties": { + "allocation": { + "properties": { + "address": { + "type": "long" + }, + "file": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "function": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "line": { + "type": "long" + }, + "package": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "stats": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + } + } + }, + "edge_allocation": { + "properties": { + "child": { + "properties": { + "file": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "name": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "package": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + } + } + }, + "parent": { + "properties": { + "file": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "name": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "package": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + } + } + }, + "stats": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + } + } + }, + "function": { + "properties": { + "children": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + }, + "file": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "name": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "package": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "self": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + }, + "total": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + } + } + }, + "run": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + }, + "summary": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + }, + "type": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + } + } + }, + "memstats": { + "properties": { + "allocations": { + "properties": { + "active": { + "type": "long" + }, + "allocated": { + "type": "long" + }, + "frees": { + "type": "long" + }, + "idle": { + "type": "long" + }, + "mallocs": { + "type": "long" + }, + "objects": { + "type": "long" + }, + "total": { + "type": "long" + } + } + }, + "duration": { + "properties": { + "ns": { + "type": "long" + } + } + }, + "end": { + "type": "date" + }, + "frees": { + "type": "long" + }, + "gc_count": { + "type": "long" + }, + "gc_total_pause": { + "properties": { + "ns": { + "type": "long" + } + } + }, + "mallocs": { + "type": "long" + }, + "next_gc_limit": { + "type": "long" + }, + "run": { + "type": "long" + }, + "size": { + "type": "long" + }, + "start": { + "type": "date" + }, + "system": { + "properties": { + "obtained": { + "type": "long" + }, + "released": { + "type": "long" + }, + "stack": { + "type": "long" + }, + "total": { + "type": "long" + } + } + }, + "type": { + "ignore_above": 1024, + "index": "not_analyzed", + "type": "string" + } + } + } + } + }, "haproxy": { "properties": { "info": { diff --git a/metricbeat/metricbeat.template.json b/metricbeat/metricbeat.template.json index 09b1bd621d47..cddf2e1cc742 100644 --- a/metricbeat/metricbeat.template.json +++ b/metricbeat/metricbeat.template.json @@ -306,6 +306,375 @@ } } }, + "goprof": { + "properties": { + "memprof": { + "properties": { + "allocation": { + "properties": { + "address": { + "type": "long" + }, + "file": { + "ignore_above": 1024, + "type": "keyword" + }, + "function": { + "ignore_above": 1024, + "type": "keyword" + }, + "line": { + "type": "long" + }, + "package": { + "ignore_above": 1024, + "type": "keyword" + }, + "stats": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + } + } + }, + "edge_allocation": { + "properties": { + "child": { + "properties": { + "file": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "package": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "parent": { + "properties": { + "file": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "package": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "stats": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + } + } + }, + "function": { + "properties": { + "children": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + }, + "file": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "package": { + "ignore_above": 1024, + "type": "keyword" + }, + "self": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + }, + "total": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + } + } + }, + "run": { + "ignore_above": 1024, + "type": "keyword" + }, + "summary": { + "properties": { + "alloc_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "alloc_space": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_objects": { + "properties": { + "count": { + "type": "long" + } + } + }, + "inuse_space": { + "properties": { + "count": { + "type": "long" + } + } + } + } + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "memstats": { + "properties": { + "allocations": { + "properties": { + "active": { + "type": "long" + }, + "allocated": { + "type": "long" + }, + "frees": { + "type": "long" + }, + "idle": { + "type": "long" + }, + "mallocs": { + "type": "long" + }, + "objects": { + "type": "long" + }, + "total": { + "type": "long" + } + } + }, + "duration": { + "properties": { + "ns": { + "type": "long" + } + } + }, + "end": { + "type": "date" + }, + "frees": { + "type": "long" + }, + "gc_count": { + "type": "long" + }, + "gc_total_pause": { + "properties": { + "ns": { + "type": "long" + } + } + }, + "mallocs": { + "type": "long" + }, + "next_gc_limit": { + "type": "long" + }, + "run": { + "type": "long" + }, + "size": { + "type": "long" + }, + "start": { + "type": "date" + }, + "system": { + "properties": { + "obtained": { + "type": "long" + }, + "released": { + "type": "long" + }, + "stack": { + "type": "long" + }, + "total": { + "type": "long" + } + } + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, "haproxy": { "properties": { "info": { diff --git a/metricbeat/metricbeat.yml b/metricbeat/metricbeat.yml index 5678d6364ee7..99d899060439 100644 --- a/metricbeat/metricbeat.yml +++ b/metricbeat/metricbeat.yml @@ -43,6 +43,13 @@ metricbeat.modules: period: 10s processes: ['.*'] +#------------------------------- goprof Module ------------------------------- +#- module: goprof + #metricsets: ["memstats", "memprof"] + #enabled: true + #period: 30s + #hosts: ["localhost:6060"] + #================================ General ===================================== diff --git a/metricbeat/module/goprof/_meta/config.yml b/metricbeat/module/goprof/_meta/config.yml new file mode 100644 index 000000000000..488b2eb6253a --- /dev/null +++ b/metricbeat/module/goprof/_meta/config.yml @@ -0,0 +1,5 @@ +#- module: goprof + #metricsets: ["memstats", "memprof"] + #enabled: true + #period: 30s + #hosts: ["localhost:6060"] diff --git a/metricbeat/module/goprof/_meta/docs.asciidoc b/metricbeat/module/goprof/_meta/docs.asciidoc new file mode 100644 index 000000000000..443c24ad6ca2 --- /dev/null +++ b/metricbeat/module/goprof/_meta/docs.asciidoc @@ -0,0 +1,4 @@ +== goprof Module + +This is the goprof Module. + diff --git a/metricbeat/module/goprof/_meta/fields.yml b/metricbeat/module/goprof/_meta/fields.yml new file mode 100644 index 000000000000..600e4960fc2e --- /dev/null +++ b/metricbeat/module/goprof/_meta/fields.yml @@ -0,0 +1,10 @@ +- key: goprof + title: "goprof" + description: > + goprof Module + fields: + - name: goprof + type: group + description: > + go http based process profiling information. + fields: diff --git a/metricbeat/module/goprof/_meta/kibana/dashboard/go-Process-Memory-Profiling-Overview.json b/metricbeat/module/goprof/_meta/kibana/dashboard/go-Process-Memory-Profiling-Overview.json new file mode 100644 index 000000000000..da66f2808017 --- /dev/null +++ b/metricbeat/module/goprof/_meta/kibana/dashboard/go-Process-Memory-Profiling-Overview.json @@ -0,0 +1,13 @@ +{ + "hits": 0, + "timeRestore": false, + "description": "", + "title": "go Process Memory Profiling Overview", + "uiStateJSON": "{}", + "panelsJSON": "[{\"col\":1,\"id\":\"go-Process-Memory-Overview\",\"panelIndex\":1,\"row\":1,\"size_x\":7,\"size_y\":3,\"type\":\"visualization\"},{\"col\":8,\"id\":\"go-Process-Object-count\",\"panelIndex\":2,\"row\":1,\"size_x\":5,\"size_y\":3,\"type\":\"visualization\"},{\"col\":1,\"id\":\"go-Process-Memory-Profile-Top-Active-Allocations\",\"panelIndex\":3,\"row\":4,\"size_x\":12,\"size_y\":6,\"type\":\"visualization\"},{\"id\":\"go-Process-Memory-Profile-Top-Active-Indirect-Allocations\",\"type\":\"visualization\",\"panelIndex\":4,\"size_x\":12,\"size_y\":5,\"col\":1,\"row\":10},{\"id\":\"go-Process-Memory-Profile-Active-Allocations\",\"type\":\"search\",\"panelIndex\":5,\"size_x\":12,\"size_y\":5,\"col\":1,\"row\":15,\"columns\":[\"goprof.memprof.allocation.function\",\"goprof.memprof.allocation.stats.inuse_objects.count\",\"goprof.memprof.allocation.package\",\"goprof.memprof.allocation.file\",\"goprof.memprof.allocation.line\"],\"sort\":[\"@timestamp\",\"desc\"]}]", + "optionsJSON": "{\"darkTheme\":false}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"filter\":[{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}}}]}" + } +} \ No newline at end of file diff --git a/metricbeat/module/goprof/_meta/kibana/dashboard/go-Process-Memory-Statistics.json b/metricbeat/module/goprof/_meta/kibana/dashboard/go-Process-Memory-Statistics.json new file mode 100644 index 000000000000..10e3e8bbdd07 --- /dev/null +++ b/metricbeat/module/goprof/_meta/kibana/dashboard/go-Process-Memory-Statistics.json @@ -0,0 +1,13 @@ +{ + "hits": 0, + "timeRestore": false, + "description": "", + "title": "go Process Memory Statistics", + "uiStateJSON": "{}", + "panelsJSON": "[{\"col\":1,\"id\":\"go-Process-Memory-Overview\",\"panelIndex\":1,\"row\":1,\"size_x\":12,\"size_y\":4,\"type\":\"visualization\"},{\"id\":\"go-Process-Object-count\",\"type\":\"visualization\",\"panelIndex\":2,\"size_x\":5,\"size_y\":3,\"col\":8,\"row\":5},{\"id\":\"go-Process-Allocations-Rate\",\"type\":\"visualization\",\"panelIndex\":3,\"size_x\":7,\"size_y\":3,\"col\":1,\"row\":5}]", + "optionsJSON": "{\"darkTheme\":false}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"filter\":[{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}}}]}" + } +} \ No newline at end of file diff --git a/metricbeat/module/goprof/_meta/kibana/search/go-Process-Memory-Profile-Active-Allocations.json b/metricbeat/module/goprof/_meta/kibana/search/go-Process-Memory-Profile-Active-Allocations.json new file mode 100644 index 000000000000..254cd3c90d27 --- /dev/null +++ b/metricbeat/module/goprof/_meta/kibana/search/go-Process-Memory-Profile-Active-Allocations.json @@ -0,0 +1,20 @@ +{ + "sort": [ + "@timestamp", + "desc" + ], + "hits": 0, + "description": "", + "title": "go Process Memory Profile Active Allocations", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"index\":\"metricbeat-*\",\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"metricset.module:goprof AND metricset.name:memprof AND type:allocation AND -goprof.memprof.allocation.stats.inuse_objects.count:0\"}},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":true,\"index\":\"metricbeat-*\",\"key\":\"metricset.module\",\"negate\":false,\"value\":\"goprof\"},\"query\":{\"match\":{\"metricset.module\":{\"query\":\"goprof\",\"type\":\"phrase\"}}}}],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}" + }, + "columns": [ + "goprof.memprof.allocation.function", + "goprof.memprof.allocation.stats.inuse_objects.count", + "goprof.memprof.allocation.package", + "goprof.memprof.allocation.file", + "goprof.memprof.allocation.line" + ] +} \ No newline at end of file diff --git a/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Allocations-Rate.json b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Allocations-Rate.json new file mode 100644 index 000000000000..90dad0f9613c --- /dev/null +++ b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Allocations-Rate.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"type\":\"timelion\",\"title\":\"go Process Allocations Rate\",\"params\":{\"expression\":\".es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"avg:goprof.memstats.allocations.total\\\", kibana=true).derivative().bars().label(\\\"Bytes Allocated/min\\\"),.es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.allocations.allocated\\\", kibana=true).label(\\\"Bytes Allocated (Max)\\\"),.es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.next_gc_limit\\\", kibana=true).label(\\\"GC Limit\\\")\",\"interval\":\"1m\"}}", + "description": "", + "title": "go Process Allocations Rate", + "uiStateJSON": "{}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{}" + } +} \ No newline at end of file diff --git a/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Memory-Overview.json b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Memory-Overview.json new file mode 100644 index 000000000000..354cd7818d73 --- /dev/null +++ b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Memory-Overview.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"title\":\"go Process Memory Overview\",\"type\":\"timelion\",\"params\":{\"expression\":\".es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"sum:goprof.memstats.duration.ns\\\",timefield=\\\"goprof.memstats.start\\\", kibana=true).divide(1000).label(\\\"GC cycle - duration (us)\\\").bars().yaxis(2,label=\\\"duration [us]\\\").color(\\\"#e6e6e6\\\"), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.system.total\\\", kibana=true).label(\\\"System Memory\\\").yaxis(1,label=\\\"bytes\\\",position=left), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.next_gc_limit\\\", kibana=true).movingaverage(10).label(\\\"GC Limit\\\"), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"max:goprof.memstats.allocations.allocated\\\", kibana=true).mvavg(10).label(\\\"Bytes Allocated (Max)\\\"), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"min:goprof.memstats.allocations.allocated\\\", kibana=true).mvavg(10).label(\\\"Bytes Allocated (Min)\\\")\",\"interval\":\"1m\"},\"aggs\":[],\"listeners\":{}}", + "description": "", + "title": "go Process Memory Overview", + "uiStateJSON": "{}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"filter\":[]}" + } +} \ No newline at end of file diff --git a/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Memory-Profile-Top-Active-Allocations.json b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Memory-Profile-Top-Active-Allocations.json new file mode 100644 index 000000000000..81e8696c2021 --- /dev/null +++ b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Memory-Profile-Top-Active-Allocations.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"title\":\"go Process Memory Profile Top Active Allocations\",\"type\":\"line\",\"params\":{\"shareYAxis\":true,\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"bottom\",\"showCircles\":true,\"smoothLines\":false,\"interpolate\":\"linear\",\"scale\":\"linear\",\"drawLinesBetweenPoints\":true,\"radiusRatio\":9,\"times\":[],\"addTimeMarker\":true,\"defaultYExtents\":true,\"setYExtents\":false,\"yAxis\":{}},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"goprof.memprof.function.self.stats.inuse_objects.count\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"date_histogram\",\"schema\":\"segment\",\"params\":{\"field\":\"@timestamp\",\"interval\":\"auto\",\"customInterval\":\"2h\",\"min_doc_count\":1,\"extended_bounds\":{}}},{\"id\":\"4\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"split\",\"params\":{\"field\":\"goprof.memprof.function.package\",\"size\":3,\"order\":\"desc\",\"orderBy\":\"1\",\"row\":true}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"goprof.memprof.function.name\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}", + "description": "", + "title": "go Process Memory Profile Top Active Allocations", + "uiStateJSON": "{\"vis\":{\"legendOpen\":true},\"spy\":{\"mode\":{\"name\":null,\"fill\":false}}}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"index\":\"metricbeat-*\",\"query\":{\"query_string\":{\"query\":\"metricset.module:goprof AND metricset.name:memprof AND type:function AND -goprof.memprof.function.self.stats.inuse_objects.count:0\",\"analyze_wildcard\":true}},\"filter\":[]}" + } +} \ No newline at end of file diff --git a/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Memory-Profile-Top-Active-Indirect-Allocations.json b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Memory-Profile-Top-Active-Indirect-Allocations.json new file mode 100644 index 000000000000..9773abfe59a3 --- /dev/null +++ b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Memory-Profile-Top-Active-Indirect-Allocations.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"title\":\"go Process Memory Profile Top Active Indirect Allocations\",\"type\":\"line\",\"params\":{\"shareYAxis\":true,\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"showCircles\":true,\"smoothLines\":false,\"interpolate\":\"linear\",\"scale\":\"linear\",\"drawLinesBetweenPoints\":true,\"radiusRatio\":9,\"times\":[],\"addTimeMarker\":false,\"defaultYExtents\":false,\"setYExtents\":false,\"yAxis\":{}},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"goprof.memprof.function.children.stats.inuse_objects.count\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"date_histogram\",\"schema\":\"segment\",\"params\":{\"field\":\"@timestamp\",\"interval\":\"auto\",\"customInterval\":\"2h\",\"min_doc_count\":1,\"extended_bounds\":{}}},{\"id\":\"4\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"split\",\"params\":{\"field\":\"goprof.memprof.function.package\",\"size\":3,\"order\":\"desc\",\"orderBy\":\"1\",\"row\":true}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"goprof.memprof.function.name\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}", + "description": "", + "title": "go Process Memory Profile Top Active Indirect Allocations", + "uiStateJSON": "{}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"index\":\"metricbeat-*\",\"query\":{\"query_string\":{\"query\":\"metricset.module:goprof AND metricset.name:memprof AND type:function AND -goprof.memprof.function.children.stats.inuse_objects.count:0\",\"analyze_wildcard\":true}},\"filter\":[]}" + } +} \ No newline at end of file diff --git a/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Object-count.json b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Object-count.json new file mode 100644 index 000000000000..b258f831b6fa --- /dev/null +++ b/metricbeat/module/goprof/_meta/kibana/visualization/go-Process-Object-count.json @@ -0,0 +1,10 @@ +{ + "visState": "{\"title\":\"go Process Object count\",\"type\":\"timelion\",\"params\":{\"expression\":\".es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"avg:goprof.memstats.allocations.objects\\\", kibana=true).mvavg(10).label(\\\"Object count (avg)\\\"), .subtract(.es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"avg:goprof.memstats.allocations.mallocs\\\", kibana=true).derivative(), .es(index=\\\"metricbeat-*\\\",q=\\\"metricset.module:goprof AND metricset.name:memstats\\\",metric=\\\"avg:goprof.memstats.allocations.frees\\\", kibana=true).derivative()).bars().label(\\\"Object allocation rate\\\")\",\"interval\":\"1m\"},\"aggs\":[],\"listeners\":{}}", + "description": "", + "title": "go Process Object count", + "uiStateJSON": "{}", + "version": 1, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"filter\":[]}" + } +} \ No newline at end of file diff --git a/metricbeat/module/goprof/doc.go b/metricbeat/module/goprof/doc.go new file mode 100644 index 000000000000..51c1f5d1ea7d --- /dev/null +++ b/metricbeat/module/goprof/doc.go @@ -0,0 +1,4 @@ +/* +Package goprof is a Metricbeat module that contains MetricSets. +*/ +package goprof diff --git a/metricbeat/module/goprof/goprof.go b/metricbeat/module/goprof/goprof.go new file mode 100644 index 000000000000..3ccdb5c9ba4a --- /dev/null +++ b/metricbeat/module/goprof/goprof.go @@ -0,0 +1,41 @@ +package goprof + +import ( + "encoding/json" + "fmt" + "io/ioutil" + "net/http" +) + +func Request(url string, client *http.Client) (map[string]interface{}, error) { + data := map[string]interface{}{} + err := RequestInto(&data, url, client) + return data, err +} + +func RequestInto(data interface{}, url string, client *http.Client) error { + buf, err := RequestLoad(url, client) + if err != nil { + return err + } + return json.Unmarshal(buf, data) +} + +func RequestLoad(url string, client *http.Client) ([]byte, error) { + req, err := http.NewRequest("GET", url, nil) + if err != nil { + return nil, err + } + + resp, err := client.Do(req) + if err != nil { + return nil, fmt.Errorf("error making http request: %v", err) + } + defer resp.Body.Close() + + if resp.StatusCode != 200 { + return nil, fmt.Errorf("HTTP error %d: %s", resp.StatusCode, resp.Status) + } + + return ioutil.ReadAll(resp.Body) +} diff --git a/metricbeat/module/goprof/memprof/_meta/data.json b/metricbeat/module/goprof/memprof/_meta/data.json new file mode 100644 index 000000000000..38e4c83549eb --- /dev/null +++ b/metricbeat/module/goprof/memprof/_meta/data.json @@ -0,0 +1,19 @@ +{ + "@timestamp":"2016-05-23T08:05:34.853Z", + "beat":{ + "hostname":"beathost", + "name":"beathost" + }, + "metricset":{ + "host":"localhost", + "module":"mysql", + "name":"status", + "rtt":44269 + }, + "goprof":{ + "memprof":{ + "example": "memprof" + } + }, + "type":"metricsets" +} diff --git a/metricbeat/module/goprof/memprof/_meta/docs.asciidoc b/metricbeat/module/goprof/memprof/_meta/docs.asciidoc new file mode 100644 index 000000000000..ab0d24912074 --- /dev/null +++ b/metricbeat/module/goprof/memprof/_meta/docs.asciidoc @@ -0,0 +1,3 @@ +=== goprof memprof MetricSet + +This is the memprof metricset of the module goprof. diff --git a/metricbeat/module/goprof/memprof/_meta/fields.yml b/metricbeat/module/goprof/memprof/_meta/fields.yml new file mode 100644 index 000000000000..2898e98c9496 --- /dev/null +++ b/metricbeat/module/goprof/memprof/_meta/fields.yml @@ -0,0 +1,200 @@ +- name: memprof + type: group + description: > + HTTP sampling based memory profiler. + fields: + + - name: run + type: keyword + description: unique id shared by all events of the same profiling run. + + - name: type + type: keyword + description: memprof report type. + + - name: summary + type: group + description: > + Total allocation statistics of profile run. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + + - name: function + type: group + description: > + Per function allocation statisitics. + fields: + - name: package + type: keyword + description: The function its package name + - name: name + type: keyword + description: The function name + - name: file + type: keyword + description: The file name in package the function is defined in + - name: self + type: group + description: > + Object allocation statistics for allocation within the function itself + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + - name: total + type: group + description: > + Cummulative allocation statistics including the function itself and + all functions being called directly or indirectly. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + - name: children + type: group + description: > + Cummulative allocation statistics including all functions being + called directly or indirectly, but not the current function itself. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + + - name: edge_allocation + type: group + description: > + Allocation statistics between caller and callee. + fields: + - name: parent + type: group + description: > + The parent node in call graph (caller). + fields: + - name: package + type: keyword + description: The function its package name + - name: name + type: keyword + description: The function name + - name: file + type: keyword + description: The file name in package the function is defined in + - name: child + type: group + description: > + The child node in call graph (callee). + fields: + - name: package + type: keyword + description: The function its package name + - name: name + type: keyword + description: The function name + - name: file + type: keyword + description: The file name in package the function is defined in + - name: stats + type: group + description: > + Total amount of allocations due to caller using the callee. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. + + - name: allocation + type: group + description: > + Allocation sample captured by profiler + fields: + - name: package + type: keyword + description: The function its package name + - name: function + type: keyword + description: The function name + - name: file + type: keyword + description: The file name in package the function is defined in + - name: line + type: integer + description: The file its line the allocation happened. + - name: address + type: long + description: Executable in memory location the allocation happened at. + - name: stats + type: group + description: > + Total allocation statistics for allocations happening at the given location. + fields: + - name: alloc_objects.count + type: long + description: Total number of objects allocated. + - name: alloc_space.count + type: long + format: bytes + description: Total amount of bytes allocated. + - name: inuse_objects.count + type: long + description: Number of objects not being collected by garbage collector. + - name: inuse_space.count + type: long + format: bytes + description: Amount of space not being collected by garbage collector. diff --git a/metricbeat/module/goprof/memprof/cmd/memprof/main.go b/metricbeat/module/goprof/memprof/cmd/memprof/main.go new file mode 100644 index 000000000000..9bd7e7cae468 --- /dev/null +++ b/metricbeat/module/goprof/memprof/cmd/memprof/main.go @@ -0,0 +1,154 @@ +package main + +import ( + "flag" + "fmt" + "io" + "io/ioutil" + "net/http" + "os" + "time" + + "github.com/elastic/beats/metricbeat/module/goprof/memprof" +) + +func main() { + mode := flag.String("sort", "", "sort order") + flag.Parse() + + source := flag.Args()[0] + profile, err := fetchProfile(source) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + + var sorter func(a, b *memprof.FunctionInfo) bool + if *mode != "" { + for i, t := range profile.SampleType { + if t.Type == *mode { + sorter = memprof.TopByStat(i) + break + } + } + + if sorter == nil { + fmt.Println("Invalid sort mode") + os.Exit(1) + } + } + + summary := memprof.SumSamples(profile.Sample) + for j, t := range profile.SampleType { + fmt.Printf("%v: %v %v\n", t.Type, summary[j], t.Unit) + } + fmt.Println("") + + printFunctions(profile, sorter) +} + +func printFunctions(p *memprof.Profile, mode func(a, b *memprof.FunctionInfo) bool) { + summary := memprof.CollectFunctionStats(p) + if mode != nil { + memprof.SortFunctionStatsBy(summary, mode) + } + + for _, f := range summary { + fmt.Printf("function %v: %v\n", f.Function.ID, f.Function.Name) + fmt.Println(" file: ", f.Function.File) + if len(f.Parents) > 0 { + fmt.Println(" parents: ") + for _, parent := range f.Parents { + fn := parent.Other.Function + fmt.Printf(" - (id=%v) %v\n", fn.ID, fn.Name) + if st := parent.StatsTotal; len(st) > 0 { + fmt.Println(" stats:") + for i, t := range p.SampleType { + fmt.Printf(" %v: %v %v\n", t.Type, st[i], t.Unit) + } + } + } + } + if len(f.Children) > 0 { + fmt.Println(" children: ") + for _, c := range f.Children { + fn := c.Other.Function + fmt.Printf(" - (id=%v) %v\n", fn.ID, fn.Name) + if st := c.StatsTotal; len(st) > 0 { + fmt.Println(" stats:") + for i, t := range p.SampleType { + fmt.Printf(" %v: %v %v\n", t.Type, st[i], t.Unit) + } + } + } + } + + fmt.Println(" alloc stats:") + for j, t := range p.SampleType { + self := int64(0) + if len(f.StatsSelf) > 0 { + self = f.StatsSelf[j] + } + fmt.Printf(" %v/%v %v %v\n", self, f.StatsTotal[j], t.Type, t.Unit) + } + if len(f.SamplesSelf) > 0 { + fmt.Println(" allocations") + for _, s := range f.SamplesSelf { + loc := s.Locations[0] + fmt.Printf(" line %v (id: %v at 0x%x):\n", loc.Line, loc.ID, loc.Addr) + for j, t := range p.SampleType { + fmt.Printf(" %v %v %v\n", s.Values[j], t.Type, t.Unit) + } + } + } + + fmt.Println("") + } +} + +func fetchProfile(source string) (*memprof.Profile, error) { + in, err := fetchFile(source) + if err != nil { + in, err = fetchHTTP(source) + } + + if err != nil { + return nil, err + } + + defer in.Close() + + content, err := ioutil.ReadAll(in) + if err != nil { + return nil, err + } + + return memprof.ParseHeap(content) +} + +func fetchHTTP(source string) (io.ReadCloser, error) { + resp, err := httpGet(source, 60*time.Second) + if err != nil { + return nil, err + } + + if resp.StatusCode != http.StatusOK { + return nil, fmt.Errorf("server response: %s", resp.Status) + } + return resp.Body, nil +} + +func fetchFile(source string) (io.ReadCloser, error) { + return os.Open(source) +} + +// httpGet is a wrapper around http.Get; it is defined as a variable +// so it can be redefined during for testing. +func httpGet(url string, timeout time.Duration) (*http.Response, error) { + client := &http.Client{ + Transport: &http.Transport{ + ResponseHeaderTimeout: timeout + 5*time.Second, + }, + } + return client.Get(url) +} diff --git a/metricbeat/module/goprof/memprof/info.go b/metricbeat/module/goprof/memprof/info.go new file mode 100644 index 000000000000..4fa2d479da9a --- /dev/null +++ b/metricbeat/module/goprof/memprof/info.go @@ -0,0 +1,124 @@ +package memprof + +import "sort" + +type FunctionInfo struct { + Function *Function + StatsTotal []int64 + StatsSelf []int64 + SamplesAll []Sample + SamplesSelf []Sample + + Parents []RelFunctionInfo + Children []RelFunctionInfo +} + +type RelFunctionInfo struct { + Other *FunctionInfo + StatsDirect []int64 + StatsIndirect []int64 + StatsTotal []int64 +} + +type Sorter struct { + fis []*FunctionInfo + less func(a, b *FunctionInfo) bool +} + +func CollectFunctionStats(p *Profile) []*FunctionInfo { + out := make([]*FunctionInfo, len(p.Functions)) + for i, f := range p.Functions { + samplesAll := CollectFunctionSamples(f, p.Sample, false) + samplesSelf := CollectFunctionSamples(f, samplesAll, true) + out[i] = &FunctionInfo{ + Function: f, + StatsTotal: SumSamples(samplesAll), + StatsSelf: SumSamples(samplesSelf), + SamplesAll: samplesAll, + SamplesSelf: samplesSelf, + Parents: make([]RelFunctionInfo, len(f.Parents)), + Children: make([]RelFunctionInfo, len(f.Children)), + } + } + + // link function from leaf -> root + for _, fi := range out { + for i, id := range fi.Function.Parents { + parent := out[id] + statsDirect := SumSamples(CollectFunctionSamples( + parent.Function, fi.SamplesSelf, false)) + + statsIndirect := SumSamples(CollectFunctionSamples( + parent.Function, + CollectNonLeafFunctionSamples(fi.Function, fi.SamplesAll), + false)) + + fi.Parents[i] = RelFunctionInfo{ + Other: parent, + StatsDirect: statsDirect, + StatsIndirect: statsIndirect, + StatsTotal: SumValues(statsIndirect, statsDirect), + } + } + + } + + // link function from root -> leaf, copying already computed stats + for _, fi := range out { + for i, id := range fi.Function.Children { + child := out[id] + var rel *RelFunctionInfo + for i := range child.Parents { + r := &child.Parents[i] + if r.Other == fi { + rel = r + break + } + } + if rel == nil { + panic("missing link") + } + + fi.Children[i] = RelFunctionInfo{ + Other: child, + StatsDirect: rel.StatsDirect, + StatsIndirect: rel.StatsIndirect, + StatsTotal: rel.StatsTotal, + } + } + } + + // summarize per function stats + for _, fi := range out { + fi.SamplesSelf = CombineSamplesByLocation(fi.SamplesSelf) + fi.SamplesAll = CombineSamplesByLocation(fi.SamplesAll) + } + + return out +} + +func (s *Sorter) Len() int { return len(s.fis) } +func (s *Sorter) Swap(i, j int) { s.fis[i], s.fis[j] = s.fis[j], s.fis[i] } +func (s *Sorter) Less(i, j int) bool { return s.less(s.fis[i], s.fis[j]) } + +func SortFunctionStatsBy(fis []*FunctionInfo, cmp func(a, b *FunctionInfo) bool) { + sort.Sort(&Sorter{fis, cmp}) +} + +func TopByStat(idx int) func(*FunctionInfo, *FunctionInfo) bool { + return func(b, a *FunctionInfo) bool { + ca := len(a.StatsSelf) + cb := len(b.StatsSelf) + if ca != cb { + return ca == 0 + } + + sa := a.StatsSelf + sb := b.StatsSelf + if ca == 0 { + sa = a.StatsTotal + sb = b.StatsTotal + } + return sa[idx] < sb[idx] + } +} diff --git a/metricbeat/module/goprof/memprof/memprof.go b/metricbeat/module/goprof/memprof/memprof.go new file mode 100644 index 000000000000..295378f6d021 --- /dev/null +++ b/metricbeat/module/goprof/memprof/memprof.go @@ -0,0 +1,197 @@ +package memprof + +import ( + "net/http" + "path/filepath" + "regexp" + "strings" + + "github.com/elastic/beats/libbeat/common" + "github.com/elastic/beats/metricbeat/mb" + "github.com/elastic/beats/metricbeat/module/goprof" + uuid "github.com/satori/go.uuid" +) + +// init registers the MetricSet with the central registry. +func init() { + if err := mb.Registry.AddMetricSet("goprof", "memprof", New); err != nil { + panic(err) + } +} + +// multiple fetch calls. +type MetricSet struct { + mb.BaseMetricSet + client *http.Client // HTTP client that is reused across requests + url string // httpprof endpoint url + gopath *regexp.Regexp +} + +var defaultGoPath = regexp.MustCompile(`(?U)^.*/src/`) + +// New creates a new instance of the MetricSet +func New(base mb.BaseMetricSet) (mb.MetricSet, error) { + config := struct { + ProfPath string `config:"prof_path"` + GoPath *regexp.Regexp `config:"gopath"` + }{ + ProfPath: "/debug/pprof/heap?debug=1", + GoPath: defaultGoPath, + } + if err := base.Module().UnpackConfig(&config); err != nil { + return nil, err + } + + url := "http://" + base.Host() + config.ProfPath + return &MetricSet{ + BaseMetricSet: base, + url: url, + client: &http.Client{Timeout: base.Module().Config().Timeout}, + gopath: config.GoPath, + }, nil +} + +// Fetch methods implements the data gathering and data conversion. +func (m *MetricSet) Fetch() ([]common.MapStr, error) { + profile, err := m.fetchProfile() + if err != nil { + return nil, err + } + + id := uuid.NewV4() + + zero := make([]int64, len(profile.SampleType)) + valueStats := func(values []int64) common.MapStr { + if len(values) == 0 { + values = zero + } + m := common.MapStr{} + for i, t := range profile.SampleType { + m[t.Type] = common.MapStr{t.Unit: values[i]} + } + return m + } + + var events []common.MapStr + emit := func(e common.MapStr) { + e["run"] = id + events = append(events, e) + } + + // current profile run summary + emit(common.MapStr{ + "type": "summary", + "summary": valueStats(SumSamples(profile.Sample)), + }) + + for _, f := range CollectFunctionStats(profile) { + pkg, name := splitName(m.gopath, f.Function.Name) + file := filepath.Base(f.Function.File) + + // per function allocation summaries + emit(common.MapStr{ + "type": "function", + "function": common.MapStr{ + "package": pkg, + "name": name, + "file": file, + + // mem stats done by function itself + "self": common.MapStr{ + "stats": valueStats(f.StatsSelf), + }, + + // mem stats including function and children in call graph + "total": common.MapStr{ + "stats": valueStats(f.StatsTotal), + }, + + // mem stats of children in call graph + "children": common.MapStr{ + "stats": valueStats(SubValues(f.StatsTotal, f.StatsSelf)), + }, + }, + }) + + // per function direct allocations + for _, sample := range f.SamplesSelf { + loc := sample.Locations[0] + emit(common.MapStr{ + "type": "allocation", + "allocation": common.MapStr{ + "package": pkg, + "function": name, + "file": file, + "line": loc.Line, + "address": loc.Addr, + "stats": valueStats(sample.Values), + }, + }) + } + + // TODO: optional: function indirect allocations being done in call graph + // children nodes + + // Edge allocations: allocation stats for current functions children in call graph + for _, c := range f.Children { + fo := c.Other.Function + foPkg, foName := splitName(m.gopath, fo.Name) + + emit(common.MapStr{ + "type": "edge_allocation", + "edge_allocation": common.MapStr{ + "parent": common.MapStr{ + "package": pkg, + "function": name, + "file": file, + }, + "child": common.MapStr{ + "package": foPkg, + "function": foName, + "file": filepath.Base(fo.File), + }, + "stats": valueStats(c.StatsTotal), + }, + }) + } + } + + return events, nil +} + +func (m *MetricSet) fetchProfile() (*Profile, error) { + buf, err := goprof.RequestLoad(m.url, m.client) + if err != nil { + return nil, err + } + + return ParseHeap(buf) +} + +func splitName(gopath *regexp.Regexp, fullName string) (string, string) { + idx := strings.LastIndex(fullName, "/") + if idx < 0 { + idx = 0 + } + + path := idx + idx = strings.Index(fullName[idx:], ".") + if idx < 0 { + return "", fullName + } + + idx += path + pkg, name := fullName[:idx], fullName[idx+1:] + return withoutGoPath(gopath, pkg), name +} + +func withoutGoPath(gopath *regexp.Regexp, name string) string { + if gopath == nil { + return name + } + + if loc := gopath.FindStringIndex(name); len(loc) == 2 { + name = name[loc[1]:] + } + return name +} diff --git a/metricbeat/module/goprof/memprof/parse.go b/metricbeat/module/goprof/memprof/parse.go new file mode 100644 index 000000000000..2a53a86d0952 --- /dev/null +++ b/metricbeat/module/goprof/memprof/parse.go @@ -0,0 +1,314 @@ +package memprof + +import ( + "bytes" + "fmt" + "io" + "math" + "regexp" + "strconv" + "strings" +) + +var errUnrecognized = fmt.Errorf("unrecognized profile format") +var errMalformed = fmt.Errorf("malformed profile format") + +var ( + heapHeaderRE = regexp.MustCompile(`heap profile: *(\d+): *(\d+) *\[ *(\d+): *(\d+) *\] *@ *(heap[_a-z0-9]*)/?(\d*)`) + + heapSampleRE = regexp.MustCompile(`(-?\d+): *(-?\d+) *\[ *(\d+): *(\d+) *] @([ x0-9a-f]*)`) + + hexNumberRE = regexp.MustCompile(`0x[0-9a-f]+`) + + locationRE = regexp.MustCompile(`#\t(0x[0-9a-f]+)\t(.+)\+0x[0-9a-f]+\t+(.+):(\d+)`) +) + +func ParseHeap(b []byte) (*Profile, error) { + type state struct { + value []int64 + locs []*Location + } + + type rel struct { + parent, child int + } + + type fnKey struct { + Name string + File string + } + + r := bytes.NewBuffer(b) + + l, err := r.ReadString('\n') + if err != nil { + return nil, errUnrecognized + } + + l = strings.TrimSpace(l) + header := heapHeaderRE.FindStringSubmatch(l) + if header == nil { + return nil, errUnrecognized + } + + sampling := "" + var period int64 + if len(header[6]) > 0 { + if period, err = strconv.ParseInt(header[6], 10, 64); err != nil { + return nil, errUnrecognized + } + } + + switch header[5] { + case "heapz_v2", "heap_v2": + sampling = "v2" + case "heapprofile": + sampling, period = "", 1 + case "heap": + sampling, period = "v2", period/2 + default: + return nil, errUnrecognized + } + + locs := map[uint64]*Location{} + funcs := map[fnKey]*Function{} + + relLocs := map[rel]bool{} + relFuncs := map[rel]bool{} + + p := &Profile{ + SampleType: []*ValueType{ + {Type: "inuse_objects", Unit: "count"}, + {Type: "inuse_space", Unit: "bytes"}, + {Type: "alloc_objects", Unit: "count"}, + {Type: "alloc_space", Unit: "bytes"}, + }, + } + + // parse heap entries + var active *state + locID := -1 + funcID := -1 + finalize := func() { + if active == nil { + return + } + + p.Sample = append(p.Sample, Sample{ + Values: active.value, + Locations: active.locs, + }) + + active = nil + locID = -1 + funcID = -1 + } + + for { + l, err := r.ReadString('\n') + if err != nil { + if err == io.EOF { + break + } + return nil, err + } + + if !isHeapInfo(l) { + finalize() + continue + } + + if isLocation(l) { + if active == nil { + return nil, errMalformed + } + + addr, fn, file, line, err := parseSampleLocation(l) + if err != nil { + return nil, err + } + loc := locs[addr] + var fun *Function + if loc == nil { + key := fnKey{ + Name: fn, + File: file, + } + + fun = funcs[key] + if fun == nil { + fun = &Function{ID: len(funcs), Name: fn, File: file} + funcs[key] = fun + } + + loc = &Location{len(locs), addr, fun, line, nil, nil} + locs[addr] = loc + } else { + fun = loc.Function + } + + if locID >= 0 { + relLocs[rel{child: locID, parent: loc.ID}] = true + } + if funcID >= 0 { + relFuncs[rel{child: funcID, parent: fun.ID}] = true + } + locID = loc.ID + funcID = fun.ID + active.locs = append(active.locs, loc) + } else { + finalize() + + value, _, _, err := parseHeapSample(l, period, sampling) + if err != nil { + return nil, err + } + + active = &state{value: value} + } + } + finalize() + + // normalize location map + p.Locations = make([]*Location, len(locs)) + for _, loc := range locs { + p.Locations[loc.ID] = loc + } + + // link locations + for rel := range relLocs { + parent := p.Locations[rel.parent] + child := p.Locations[rel.child] + parent.Children = append(parent.Children, rel.child) + child.Parents = append(child.Parents, rel.parent) + } + + // normalize function map + p.Functions = make([]*Function, len(funcs)) + for _, fn := range funcs { + p.Functions[fn.ID] = fn + } + + // link function map + for rel := range relFuncs { + parent := p.Functions[rel.parent] + child := p.Functions[rel.child] + parent.Children = append(parent.Children, rel.child) + child.Parents = append(child.Parents, rel.parent) + } + + return p, nil +} + +func isHeapInfo(l string) bool { + l = strings.TrimSpace(l) + if len(l) == 0 { + return false + } + + return l[0] != '#' || strings.HasPrefix(l, "#\t0x") +} + +func isLocation(l string) bool { + return l[0] == '#' +} + +func parseSampleLocation(line string) (uint64, string, string, uint64, error) { + locData := locationRE.FindStringSubmatch(line) + if len(locData) != 5 { + return 0, "", "", 0, fmt.Errorf("unexpected number of location items. got %d, want 5", len(locData)) + } + + addr := parseNumber(locData[1]) + function := strings.TrimSpace(locData[2]) + file := strings.TrimSpace(locData[3]) + ln := parseNumber(locData[4]) + return addr, function, file, ln, nil +} + +// parseHeapSample parses a single row from a heap profile into a new Sample. +func parseHeapSample(line string, rate int64, sampling string) (value []int64, blocksize int64, addrs []uint64, err error) { + sampleData := heapSampleRE.FindStringSubmatch(line) + if len(sampleData) != 6 { + return value, blocksize, addrs, fmt.Errorf("unexpected number of sample values: got %d, want 6", len(sampleData)) + } + + // Use first two values by default; tcmalloc sampling generates the + // same value for both, only the older heap-profile collect separate + // stats for in-use and allocated objects. + valueIndex := 1 + + var v1, v2, v3, v4 int64 + if v1, err = strconv.ParseInt(sampleData[valueIndex], 10, 64); err != nil { + return value, blocksize, addrs, fmt.Errorf("malformed sample: %s: %v", line, err) + } + if v2, err = strconv.ParseInt(sampleData[valueIndex+1], 10, 64); err != nil { + return value, blocksize, addrs, fmt.Errorf("malformed sample: %s: %v", line, err) + } + if v3, err = strconv.ParseInt(sampleData[valueIndex+2], 10, 64); err != nil { + return value, blocksize, addrs, fmt.Errorf("malformed sample: %s: %v", line, err) + } + if v4, err = strconv.ParseInt(sampleData[valueIndex+3], 10, 64); err != nil { + return value, blocksize, addrs, fmt.Errorf("malformed sample: %s: %v", line, err) + } + + if v1 == 0 { + if v2 != 0 { + return value, blocksize, addrs, fmt.Errorf("allocation count was 0 but allocation bytes was %d", v2) + } + } else { + blocksize = v2 / v1 + if sampling == "v2" { + v1, v2 = scaleHeapSample(v1, v2, rate) + v3, v4 = scaleHeapSample(v3, v4, rate) + } + } + + value = []int64{v1, v2, v3, v4} + addrs = extractHexNumbers(sampleData[5]) + + return value, blocksize, addrs, nil +} + +// scaleHeapSample adjusts the data from a heapz Sample to +// account for its probability of appearing in the collected +// data. heapz profiles are a sampling of the memory allocations +// requests in a program. We estimate the unsampled value by dividing +// each collected sample by its probability of appearing in the +// profile. heapz v2 profiles rely on a poisson process to determine +// which samples to collect, based on the desired average collection +// rate R. The probability of a sample of size S to appear in that +// profile is 1-exp(-S/R). +func scaleHeapSample(count, size, rate int64) (int64, int64) { + if count == 0 || size == 0 { + return 0, 0 + } + + if rate <= 1 { + // if rate==1 all samples were collected so no adjustment is needed. + // if rate<1 treat as unknown and skip scaling. + return count, size + } + + avgSize := float64(size) / float64(count) + scale := 1 / (1 - math.Exp(-avgSize/float64(rate))) + + return int64(float64(count) * scale), int64(float64(size) * scale) +} + +func parseNumber(s string) uint64 { + id, err := strconv.ParseUint(s, 0, 64) + if err != nil { + // Do not expect any parsing failures due to the regexp matching. + panic("failed to parse hex value: " + s) + } + return id +} + +func extractHexNumbers(s string) []uint64 { + var ids []uint64 + for _, s := range hexNumberRE.FindAllString(s, -1) { + ids = append(ids, parseNumber(s)) + } + return ids +} diff --git a/metricbeat/module/goprof/memprof/profile.go b/metricbeat/module/goprof/memprof/profile.go new file mode 100644 index 000000000000..d09f7af44ba3 --- /dev/null +++ b/metricbeat/module/goprof/memprof/profile.go @@ -0,0 +1,214 @@ +package memprof + +type Profile struct { + SampleType []*ValueType + Sample []Sample + Locations []*Location + Functions []*Function +} + +type ValueType struct { + Type string + Unit string +} + +type Sample struct { + Values []int64 + Locations []*Location +} + +type Location struct { + ID int + Addr uint64 + Function *Function + Line uint64 + + // parent/children location ids + Parents []int + Children []int +} + +type Function struct { + ID int + Name string + File string + + // parent/children location ids + Parents []int + Children []int +} + +func CollectLocationSamples(loc *Location, samples []Sample, leafOnly bool) []Sample { + if leafOnly { + return CollectSamplesIf(samples, loc.IsSampleLeaf) + } + return CollectSamplesIf(samples, loc.HasSample) +} + +func CollectFunctionSamples(f *Function, samples []Sample, leafOnly bool) []Sample { + if leafOnly { + return CollectSamplesIf(samples, f.IsSampleLeaf) + } + return CollectSamplesIf(samples, f.HasSample) +} + +func CollectNonLeafFunctionSamples(f *Function, samples []Sample) []Sample { + return CollectSamplesIf(samples, func(s *Sample) bool { return !f.IsSampleLeaf(s) }) +} + +func CollectSamplesIf(samples []Sample, check func(s *Sample) bool) []Sample { + var out []Sample + + for _, s := range samples { + if check(&s) { + out = append(out, s) + } + } + + return out +} + +func SumSamples(samples []Sample) []int64 { + if len(samples) == 0 { + return nil + } + + values := make([]int64, len(samples[0].Values)) + for _, s := range samples { + for i, v := range s.Values { + values[i] += v + } + } + return values +} + +func SumValues(vs ...[]int64) []int64 { + if len(vs) == 0 { + return nil + } + + L := 0 + for _, s := range vs { + if len(s) > L { + L = len(s) + } + } + + if L == 0 { + return nil + } + + values := make([]int64, L) + for _, s := range vs { + for i, v := range s { + values[i] += v + } + } + return values +} + +func SubValues(a, b []int64) []int64 { + L := len(a) + if L == 0 { + return nil + } + + if lb := len(b); L < lb { + L = lb + } + + values := make([]int64, L) + copy(values, a) + for i := range b { + values[i] -= b[i] + } + return values +} + +func CombineSamplesByLocation(samples []Sample) []Sample { + // return if no duplicate entries + if len(samples) <= 1 { + return samples + } + + // combine multiple samples by same leaf location + m := map[int]Sample{} + for _, s := range samples { + l := s.Locations[0] + id := l.ID + if old, exists := m[id]; exists { + m[id] = Sample{ + Values: SumSamples([]Sample{old, s}), + Locations: []*Location{l}, + } + } else { + m[id] = s + } + } + + // return original samples if no duplicates were found + if len(m) == len(samples) { + return samples + } + + // returned combined samples list + out := make([]Sample, 0, len(m)) + for _, s := range m { + out = append(out, s) + } + return out +} + +func (l *Location) HasSample(s *Sample) bool { + for _, sl := range s.Locations { + if sl.Equals(l) { + return true + } + } + return false +} + +func (l *Location) IsSampleLeaf(s *Sample) bool { + return len(s.Locations) > 0 && s.Locations[0].Equals(l) +} + +func (l *Location) InFunction(f *Function) bool { + return l.Function != nil && l.Function.Equals(f) +} + +func (l *Location) Equals(o *Location) bool { + return l.Addr == o.Addr +} + +func (l *Location) IsRoot() bool { + return len(l.Parents) == 0 +} + +func (l *Location) IsLeaf() bool { + return len(l.Children) == 0 +} + +func (f *Function) HasSample(s *Sample) bool { + for _, sl := range s.Locations { + if sl.InFunction(f) { + return true + } + } + return false +} + +func (f *Function) IsSampleLeaf(s *Sample) bool { + return len(s.Locations) > 0 && s.Locations[0].InFunction(f) +} + +func (f *Function) Equals(o *Function) bool { + return f.File == o.File && f.Name == o.Name +} + +func (f *Function) IsRoot() bool { + return len(f.Parents) == 0 +} + +func (f *Function) IsLeaf() bool { + return len(f.Children) == 0 +} diff --git a/metricbeat/module/goprof/memstats/_meta/data.json b/metricbeat/module/goprof/memstats/_meta/data.json new file mode 100644 index 000000000000..6e43c68d3db9 --- /dev/null +++ b/metricbeat/module/goprof/memstats/_meta/data.json @@ -0,0 +1,19 @@ +{ + "@timestamp":"2016-05-23T08:05:34.853Z", + "beat":{ + "hostname":"beathost", + "name":"beathost" + }, + "metricset":{ + "host":"localhost", + "module":"goprof", + "name":"memstats", + "rtt":44269 + }, + "goprof":{ + "memstats":{ + "example": "memstats" + } + }, + "type":"metricsets" +} diff --git a/metricbeat/module/goprof/memstats/_meta/docs.asciidoc b/metricbeat/module/goprof/memstats/_meta/docs.asciidoc new file mode 100644 index 000000000000..a14dfac7dd21 --- /dev/null +++ b/metricbeat/module/goprof/memstats/_meta/docs.asciidoc @@ -0,0 +1,3 @@ +=== goprof memstats MetricSet + +This is the memstats metricset of the module goprof. diff --git a/metricbeat/module/goprof/memstats/_meta/fields.yml b/metricbeat/module/goprof/memstats/_meta/fields.yml new file mode 100644 index 000000000000..9746626ee746 --- /dev/null +++ b/metricbeat/module/goprof/memstats/_meta/fields.yml @@ -0,0 +1,114 @@ +- name: memstats + type: group + description: > + golang expvar memstats + fields: + - name: type + type: keyword + description: memstats report type. + + # GC summary fields (type == gc_summary) + - name: next_gc_limit + type: long + format: bytes + description: > + Upper bound of memory being allocated until another garbage collection + phase will be run. + - name: gc_count + type: long + description: > + Total number of garbage collection cycles executed since program startup + - name: gc_total_pause.ns + type: long + description: Total duration of all garbage collection cycles + + # Heap usage counters (type == heap) + - name: allocations + type: group + description: > + Application heap allocations counters. + fields: + - name: mallocs + type: long + description: > + Total number of memory allocations + - name: frees + type: long + description: > + Number of memory allocations being freed. + - name: objects + type: long + description: > + Total number of allocated heap objects. + - name: total + type: long + format: bytes + description: > + Total number of bytes being allocated since startup. + - name: allocated + type: long + format: bytes + description: > + Number of bytes being actively allocated and not yet freed. + - name: idle + type: long + format: bytes + description: > + Bytes in idle heap spans + - name: active + type: long + format: bytes + description: > + Bytes in non-idle heap spans + - name: system + type: group + description: > + Memory allocator system counters. + fields: + - name: total + type: long + format: bytes + description: > + Total number of bytes received from system + - name: obtained + type: long + format: bytes + description: > + Bytes optained from system + - name: stack + type: long + format: bytes + description: > + System memory allocated for go-routine stacks. + - name: released + type: long + format: bytes + description: > + Number of bytes returned to OS. + + # Go runtime allocator (per size class) counters (type == allocator) + - name: size + type: long + format: bytes + description: The allocator bucket its size. + - name: mallocs + type: long + description: Total number of allocation from current size class. + - name: frees + type: long + description: Total number of objects being freed in current size class. + + # Per garbage collection cycle counters (type == gc_cycle) + - name: run + type: long + description: > + The nth garbage collection cycle since startup + - name: start + type: date + description: GC cycle start timestamp + - name: end + type: date + description: GC cycle end timestamp + - name: duration.ns + type: long + description: GC cycle duration in nanoseconds. diff --git a/metricbeat/module/goprof/memstats/memstats.go b/metricbeat/module/goprof/memstats/memstats.go new file mode 100644 index 000000000000..d19af76474ed --- /dev/null +++ b/metricbeat/module/goprof/memstats/memstats.go @@ -0,0 +1,131 @@ +package memstats + +import ( + "net/http" + "runtime" + "time" + + "github.com/elastic/beats/libbeat/common" + "github.com/elastic/beats/libbeat/logp" + "github.com/elastic/beats/metricbeat/mb" + "github.com/elastic/beats/metricbeat/module/goprof" +) + +// init registers the MetricSet with the central registry. +func init() { + if err := mb.Registry.AddMetricSet("goprof", "memstats", New); err != nil { + panic(err) + } +} + +type MetricSet struct { + mb.BaseMetricSet + client *http.Client // HTTP client that is reused across requests. + url string // Httpprof endpoint URL. + + lastNumGC uint32 +} + +// New create a new instance of the MetricSet. +func New(base mb.BaseMetricSet) (mb.MetricSet, error) { + config := struct { + VarsPath string `config:"vars_path"` + }{ + VarsPath: "/debug/vars", + } + if err := base.Module().UnpackConfig(&config); err != nil { + return nil, err + } + + url := "http://" + base.Host() + config.VarsPath + return &MetricSet{ + BaseMetricSet: base, + url: url, + client: &http.Client{Timeout: base.Module().Config().Timeout}, + }, nil +} + +func (m *MetricSet) Fetch() ([]common.MapStr, error) { + stats := struct { + MemStats runtime.MemStats + }{} + err := goprof.RequestInto(&stats, m.url, m.client) + if err != nil { + return nil, err + } + + ms := &stats.MemStats + var events []common.MapStr + + // add garbage collector summary + events = append(events, common.MapStr{ + "type": "gcsummary", + "next_gc_limit": ms.NextGC, + "gc_count": ms.NumGC, + "gc_total_pause": common.MapStr{ + "ns": ms.PauseTotalNs, + }, + }) + + // add heap summary + events = append(events, common.MapStr{ + "type": "heap", + "allocations": common.MapStr{ + "mallocs": ms.Mallocs, + "frees": ms.Frees, + "objects": ms.HeapObjects, + + // byte counters + "total": ms.TotalAlloc, + "allocated": ms.HeapAlloc, + "idle": ms.HeapIdle, + "active": ms.HeapInuse, + }, + "system": common.MapStr{ + "total": ms.Sys, + "optained": ms.HeapSys, + "stack": ms.StackSys, + "released": ms.HeapReleased, + }, + }) + + // collect per size class allocation stats + for _, c := range ms.BySize { + events = append(events, common.MapStr{ + "type": "allocator", + "size": c.Size, + "mallocs": c.Mallocs, + "frees": c.Frees, + }) + } + + // collect last gc run stats + if m.lastNumGC < ms.NumGC { + delta := ms.NumGC - m.lastNumGC + start := m.lastNumGC + if delta > 256 { + logp.Err("Missing %v gc cycles", delta-256) + start = ms.NumGC - 256 + delta = 256 + } + + end := start + delta + for i := start; i < end; i++ { + idx := i % 256 + end := time.Unix(0, 0).Add(time.Duration(ms.PauseEnd[idx])) + d := ms.PauseNs[idx] + start := time.Unix(0, 0).Add(time.Duration(ms.PauseEnd[idx] - d)) + events = append(events, common.MapStr{ + "type": "gccycle", + "run": i, + "start": common.Time(start), + "end": common.Time(end), + "duration": common.MapStr{"ns": d}, + }) + } + + m.lastNumGC = ms.NumGC + } + + return events, nil +}