You can build your own dashboards in Kibana. I would start with the Time Series Visual Builder if I were creating a new visualization.
This is one that I use with Heartbeat.
Then for Altering I use Watcher which is part of X-Pack. This will create a watch that queries the data every 60s and looks for hosts that were down and sends me a Slack notification.
PUT _xpack/watcher/watch/heartbeat-monitor-status-down
{
"trigger": {
"schedule": {
"interval": "1m"
}
},
"input": {
"search": {
"request": {
"search_type": "query_then_fetch",
"indices": [
"heartbeat-*"
],
"types": [],
"body": {
"size": 0,
"query": {
"bool": {
"must": [
{
"term": {
"monitor.status": {
"value": "down"
}
}
}
],
"filter": [
{
"range": {
"@timestamp": {
"from": "now-1m"
}
}
}
]
}
},
"aggregations": {
"by_monitors": {
"terms": {
"field": "monitor.id",
"size": 10,
"min_doc_count": 1
}
}
}
}
}
}
},
"condition": {
"compare": {
"ctx.payload.hits.total": {
"gt": 0
}
}
},
"actions": {
"notify-slack": {
"throttle_period_in_millis": 900000,
"slack": {
"account": "monitoring",
"message": {
"from": "Heartbeat",
"text": "Some hosts are unresponsive.",
"dynamic_attachments": {
"list_path": "ctx.payload.aggregations.by_monitors.buckets",
"attachment_template": {
"color": "warning",
"title": "{{key}}",
"text": "Total events: {{doc_count}}"
}
}
}
}
}
}
}