Hello,
Im trying to deploy a elastic stack on docker and im having some trouble with the heartbeat plugin.
ls
I have my heartbeat.yml like this:
eartbeat.config.monitors:
Directory + glob pattern to search for configuration files
path: /usr/share/heartbeat/monitors.d/*.yml
If enabled, heartbeat will periodically check the config.monitors path for changes
reload.enabled: true
How often to check for changes
reload.period: 1s
heartbeat.monitors:
- type: http
schedule: '@every 5s'
urls:
#- type: icmp
schedule: '@every 5s'
hosts:
- .*..
- .***.***.
ipv4: true
ipv6: false
mode: any
heartbeat.scheduler:
name: heartbeat
output.elasticsearch:
hosts: '{ELASTICSEARCH_HOSTS:elasticsearch:9200}'
username: '{ELASTICSEARCH_USERNAME:}'
password: '${ELASTICSEARCH_PASSWORD:}'
#- type: icmp
schedule: '@every 5s'
hosts:
- .***.***.
- .***.***.
ipv4: true
ipv6: false
mode: any
heartbeat.scheduler:
name: heartbeat
output.elasticsearch:
hosts: '{ELASTICSEARCH_HOSTS:elasticsearch:9200}'
username: '{ELASTICSEARCH_USERNAME:}'
password: '${ELASTICSEARCH_PASSWORD:}'
and my icpm.yml config looks like this
- type: icmp # monitor type
icmp
(requires root) uses ICMP Echo Request to ping
configured hosts
Monitor name used for job name and document type.
name: icmp
Enable/Disable monitor
enabled: true
Configure task schedule using cron-like syntax
schedule: '@every 5s' # exactly every 5 seconds like 10:00:00, 10:00:05, ...
List of hosts to ping
hosts:
- .***.***.
- .*..
Configure IP protocol types to ping on if hostnames are configured.
Ping all resolvable IPs if mode
is all
, or only one IP if mode
is any
.
ipv4: true
ipv6: true
mode: any
Total running time per ping test.
timeout: 16s
Waiting duration until another ICMP Echo Request is emitted.
wait: 1s
The tags of the monitors are included in their own field with each
transaction published. Tags make it easy to group servers by different
logical properties.
#tags: ["service-X", "web-tier"]
Optional fields that you can specify to add additional information to the
monitor output. Fields can be scalar values, arrays, dictionaries, or any nested
combination of these.
#fields:
env: staging
If this option is set to true, the custom fields are stored as top-level
fields in the output document instead of being grouped under a fields
sub-dictionary. Default is false.
#fields_under_root: false
When i do the command heartbeat test ouput and test config everything is ok.
Im sending the information directly to elastic, i cant figure it out why the uptime feature isnt updating my endpoints, i should have a total of 19 counting with 2 webpages and when i look in kibana the total endpoints is 21.
If you need any more information just ask...