Recently upgraded from Elasticsearch 7.16.2 to 8.8.2 and Uptime now shows "No uptime monitors found" for Monitors. I ran the setup for heartbeat once I upgraded it to 8.8.2 and the index template & data stream got created. I am able to see the new heartbeat indexes in Index Management with docs and several hundred MB of data and am able to query the data in Discover. As a troubleshooting step, I stopped heartbeat, removed all the old heartbeat 7 indexes/streams/templates and all the new heartbeat 8 indexes/streams/templates, re-ran the setup, and re-started heartbeat. This successfully re-created the template & stream, but still no monitors show up.
We are utilizing Logstash on a remote host, so I also tried to load the index template manually by performing the following:
Export the index template (from the heartbeat server):
./heartbeat export template > heartbeat.template.json
Installed the template (from the coordinating server):
curl -XPUT -H 'Content-Type: application/json' http://localhost:9200/_index_template/heartbeat-8.8.2 -d@heartbeat.template.json
Loaded the data stream (from the coordinating server):
curl -XPUT http://localhost:9200/_data_stream/heartbeat-8.8.2
Still no monitors showing up. The monitors were showing up fine prior to upgrading to 8.8.2.
I am on CentOS 7 and the heartbeat.yml is as follows:
path.home: /apps/heartbeat/heartbeat-8.8.2
path.config: ${path.home}/config
heartbeat.config.monitors:
path: ${path.home}/monitors.d/*.yml
reload.enabled: true
reload.period: 60s
setup.template.settings:
template.fields: "${path.config}/fields.yml"
index.number_of_shards: 1
index.number_of_replicas: 2
index.codec: best_compression
output.redis:
hosts: ["logstash01:6379"]
key: heartbeat
datatype: list
logging.level: info
logging.selectors: ["*"]
logging.json: true
logging.files:
path: ${HEARTBEAT_HOME}/logs
name: heartbeat.log
keepfiles: 7
http.enabled: true
Any help would be appreciated!
Thanks.