Files
karma/internal/mock/livemock.py
2019-08-08 15:45:00 +01:00

214 lines
6.2 KiB
Python

#!/usr/bin/env python
import json
import time
import urllib2
def requests_post(url, data):
req = urllib2.Request(url)
req.add_header('Content-Type', 'application/json')
response = urllib2.urlopen(req, json.dumps(data))
requests_post('http://localhost:9093/api/v1/silences',
{
"matchers": [
{
"name": "instance",
"value": "web1",
"isRegex": False
}
],
"startsAt": "2017-02-18T01:34:34Z",
"endsAt": "2063-01-01T00:00:00Z",
"createdBy": "john@example.com",
"comment": "Silenced instance"
})
requests_post('http://localhost:9093/api/v1/silences',
{
"matchers": [
{
"name": "alertname",
"value": "Host_Down",
"isRegex": False
},
{
"name": "cluster",
"value": "dev",
"isRegex": False
}
],
"startsAt": "2017-02-18T01:34:34Z",
"endsAt": "2063-01-01T00:00:00Z",
"createdBy": "john@example.com",
"comment": "Silenced Host_Down alerts in the dev cluster"
})
requests_post('http://localhost:9093/api/v1/silences',
{
"matchers": [
{
"name": "instance",
"value": "server7",
"isRegex": False
}
],
"startsAt": "2017-02-18T01:34:34Z",
"endsAt": "2063-01-01T00:00:00Z",
"createdBy": "john@example.com",
"comment": "Silenced server7"
})
for i in xrange(0, 5):
requests_post('http://localhost:9093/api/v1/alerts',
[{
"labels": {
"alertname": "HTTP_Probe_Failed",
"instance": "web1",
"job": "node_exporter",
"cluster": "dev"
},
"annotations": {
"help": "Example help annotation",
"summary": "Example summary",
"url": "http://localhost/example.html"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "HTTP_Probe_Failed",
"instance": "web2",
"job": "node_exporter",
"cluster": "dev"
},
"annotations": {
"summary": "Example summary"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Host_Down",
"instance": "server1",
"job": "node_ping",
"cluster": "prod",
"ip": "127.0.0.1"
},
"annotations": {
"summary": "Example summary",
"url": "http://localhost/example.html"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Host_Down",
"instance": "server2",
"job": "node_ping",
"cluster": "prod",
"ip": "127.0.0.2"
},
"annotations": {
"summary": "Example summary"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Host_Down",
"instance": "server3",
"job": "node_ping",
"cluster": "staging",
"ip": "127.0.0.3"
},
"annotations": {
"summary": "Example summary"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Host_Down",
"instance": "server4",
"job": "node_ping",
"cluster": "staging",
"ip": "127.0.0.4"
},
"annotations": {
"summary": "Example summary"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Host_Down",
"instance": "server5",
"job": "node_ping",
"cluster": "staging",
"ip": "127.0.0.5"
},
"annotations": {
"summary": "Example summary"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Host_Down",
"instance": "server6",
"job": "node_ping",
"cluster": "dev",
"ip": "127.0.0.6"
},
"annotations": {
"summary": "Example summary"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Host_Down",
"instance": "server7",
"job": "node_ping",
"cluster": "dev",
"ip": "127.0.0.7"
},
"annotations": {
"summary": "Example summary"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Host_Down",
"instance": "server8",
"job": "node_ping",
"cluster": "dev",
"ip": "127.0.0.8"
},
"annotations": {
"summary": "Example summary"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Memory_Usage_Too_High",
"instance": "server2",
"job": "node_exporter",
"cluster": "prod"
},
"annotations": {
"alert": "Memory usage exceeding threshold",
"dashboard": "http://localhost/dashboard.html"
},
"generatorURL": "localhost/prometheus"
}, {
"labels": {
"alertname": "Free_Disk_Space_Too_Low",
"instance": "server5",
"job": "node_exporter",
"cluster": "staging",
"disk": "sda",
},
"annotations": {
"alert": "Less than 10% disk space is free",
"dashboard": "http://localhost/dashboard.html"
},
"generatorURL": "localhost/prometheus"
}]
)
time.sleep(10)