elastic / elastic/beats

[Metricbeat][parity-tests] Is missing index_stats.json

Open
#18,647 4 comments 0 reactions 0 assignees View on GitHub
Feature:Stack Monitoring Team:Elastic-Agent-Data-Plane
Dominant language
Go
Stars
12.7k
Forks
5k
Avg merge
2d 1h
Merged PRs (30d)
370

Description

```log
STDERR:

ERROR: Found more legacy-indexed document types than metricbeat-indexed document types.
Document types indexed by legacy collection but not by Metricbeat collection: {'index_stats'}
Traceback (most recent call last):
File "/Users/elastic/elastic-stack-testing/playbooks/monitoring/elasticsearch/docs_compare.py", line 120, in
check_parity(handle_special_cases)
File "/Users/elastic/elastic-stack-testing/playbooks/monitoring/common/docs_compare_util.py", line 162, in check_parity
metricbeat_doc = get_doc(metricbeat_docs_path, doc_type)
File "/Users/elastic/elastic-stack-testing/playbooks/monitoring/common/docs_compare_util.py", line 66, in get_doc
with open(os.path.join(docs_path, doc_type + ".json")) as f:
FileNotFoundError: [Errno 2] No such file or directory: '/Users/elastic/elastic-stack-testing/ait_workspace/monitoring//elasticsearch/metricbeat/index_stats.json'
```

Looks like MB is missing index_stats.json
```JSON
{
"index_stats": {
"status": "green",
"index": ".security-7",
"total": {
"search": {
"query_total": 0,
"query_time_in_millis": 0
},
"fielddata": {
"evictions": 0,
"memory_size_in_bytes": 0
},
"docs": {
"count": 7
},
"segments": {
"count": 10,
"term_vectors_memory_in_bytes": 0,
"version_map_memory_in_bytes": 0,
"norms_memory_in_bytes": 0,
"stored_fields_memory_in_bytes": 4880,
"doc_values_memory_in_bytes": 1384,
"fixed_bit_set_memory_in_bytes": 0,
"points_memory_in_bytes": 0,
"terms_memory_in_bytes": 7600,
"memory_in_bytes": 13864,
"index_writer_memory_in_bytes": 0
},
"indexing": {
"index_total": 10,
"throttle_time_in_millis": 0,
"index_time_in_millis": 25
},
"refresh": {
"external_total_time_in_millis": 199,
"total_time_in_millis": 195
},
"query_cache": {
"evictions": 0,
"hit_count": 0,
"miss_count": 0,
"memory_size_in_bytes": 0
},
"request_cache": {
"evictions": 0,
"hit_count": 0,
"miss_count": 0,
"memory_size_in_bytes": 0
},
"merges": {
"total_size_in_bytes": 0
},
"store": {
"size_in_bytes": 37309
}
},
"uuid": "KfXIIYeTStCyOEvCkpRvOQ",
"created": 1589912993488,
"shards": {
"unassigned_replicas": 0,
"active_total": 1,
"total": 1,
"relocating": 0,
"replicas": 0,
"unassigned_total": 0,
"active_primaries": 1,
"active_replicas": 0,
"initializing": 0,
"unassigned_primaries": 0,
"primaries": 1
},
"primaries": {
"search": {
"query_total": 0,
"query_time_in_millis": 0
},
"fielddata": {
"evictions": 0,
"memory_size_in_bytes": 0
},
"docs": {
"count": 7
},
"segments": {
"count": 10,
"term_vectors_memory_in_bytes": 0,
"version_map_memory_in_bytes": 0,
"norms_memory_in_bytes": 0,
"stored_fields_memory_in_bytes": 4880,
"doc_values_memory_in_bytes": 1384,
"fixed_bit_set_memory_in_bytes": 0,
"points_memory_in_bytes": 0,
"terms_memory_in_bytes": 7600,
"memory_in_bytes": 13864,
"index_writer_memory_in_bytes": 0
},
"indexing": {
"index_total": 10,
"throttle_time_in_millis": 0,
"index_time_in_millis": 25
},
"refresh": {
"external_total_time_in_millis": 199,
"total_time_in_millis": 195
},
"query_cache": {
"evictions": 0,
"hit_count": 0,
"miss_count": 0,
"memory_size_in_bytes": 0
},
"request_cache": {
"evictions": 0,
"hit_count": 0,
"miss_count": 0,
"memory_size_in_bytes": 0
},
"merges": {
"total_size_in_bytes": 0
},
"store": {
"size_in_bytes": 37309
}
}
},
"timestamp": "2020-05-19T18:30:07.073Z",
"interval_ms": 10000,
"cluster_uuid": "hyPbAcNpRauEZ_1Ujbjbuw",
"type": "index_stats",
"source_node": {
"transport_address": "10.0.2.15:9300",
"uuid": "sKJh06B3QUeNDrElqi0HxA",
"ip": "10.0.2.15",
"host": "10.0.2.15",
"timestamp": "2020-05-19T18:30:07.048Z",
"name": "packer-virtualbox-iso-1570973674"
}
}
```

build: `https://snapshots.elastic.co/7.9.0-025ab9ec`
product: `elasticsearch`

Contributor guide

Open the contributing guide

Research direction

Start with playbooks/monitoring/elasticsearch/docs_compare.py and playbooks/monitoring/common/docs_compare_util.py to understand how parity fixtures are located and compared. Add the missing metricbeat/index_stats.json fixture using the issue's example as a reference, then rerun the parity test and confirm the index_stats document type is no longer reported as missing.

Written by the indexing model from the issue text.

Assessment

Tech stack
elasticsearch, go
Domain
observability, testing
Issue type
Bug
Difficulty
1/5
Estimated time
Under an hour
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.