http response prometheus /api/v1/labels 200 {"status":"success","data":["alertname"]}
http response prometheus /api/v1/query_range 200 {"status":"success","data":{"resultType":"matrix","result":[{"metric":{},"values":[]}]}}
http start prometheus 127.0.0.1:9110

exec bash -x ./test.sh &
exec karma --pid-file=karma.pid --alertmanager.uri=http://127.0.0.1:7110 --listen.address=127.0.0.1 --listen.port=8110 --history.enabled=true --history.timeout=10s
! stdout .
cmp stderr stderr.txt
wait

-- stderr.txt --
level=info msg="Version: dev"
level=info msg="Configured Alertmanager source" cluster=default name=default proxy=false readonly=false uri=http://127.0.0.1:7110
level=info msg="Writing PID file" path=karma.pid
level=info msg="Initial Alertmanager collection"
level=info msg="Pulling latest alerts and silences from Alertmanager"
level=info msg="Collecting alerts and silences" alertmanager=default
level=info msg="GET request" timeout=40 uri=http://127.0.0.1:7110/metrics
level=error msg="Request failed" error="Get \"http://127.0.0.1:7110/metrics\": dial tcp 127.0.0.1:7110: connect: connection refused" alertmanager=default uri=http://127.0.0.1:7110
level=error msg="Collection failed" error="Get \"http://127.0.0.1:7110/api/v2/silences\": dial tcp 127.0.0.1:7110: connect: connection refused" alertmanager=default try=1/2
level=info msg="GET request" timeout=40 uri=http://127.0.0.1:7110/metrics
level=error msg="Request failed" error="Get \"http://127.0.0.1:7110/metrics\": dial tcp 127.0.0.1:7110: connect: connection refused" alertmanager=default uri=http://127.0.0.1:7110
level=error msg="Collection failed" error="Get \"http://127.0.0.1:7110/api/v2/silences\": dial tcp 127.0.0.1:7110: connect: connection refused" alertmanager=default try=2/2
level=info msg="Collection completed"
level=info msg="Done, starting HTTP server"
level=info msg="Starting HTTP server" address=127.0.0.1:8110
level=info msg="Shutting down HTTP server" signal=terminated
level=info msg="HTTP server shut down"
level=info msg="Removing PID file" path=karma.pid
-- query.json --
{
    "sources": [
        "http://127.0.0.1:9110",
        "http://127.0.0.1:9110"
    ],
    "labels": {
        "alertname": "Fake Alert"
    }
}
-- test.sh --
while [ ! -f karma.pid ]; do sleep 1 ; done
sleep 1
curl -s -f -o /dev/null -XPOST -d @query.json http://127.0.0.1:8110/history.json
cat karma.pid | xargs kill
