Notifiers
Overview
Post LoadDensity run summaries to Slack and Microsoft Teams over their incoming-webhook URLs. Network I/O is pluggable so tests can inject a fake poster.
Slack (Block Kit)
from je_load_density import post_slack_summary
post_slack_summary(
webhook_url="https://hooks.slack.com/services/T000/B000/XXXX",
title="Smoke run",
)
The payload is a Block Kit message — header + 4-field section
(requests, failures, failure rate, p95 latency). post_slack_summary
defaults to the current build_summary() if no summary is passed.
Teams (MessageCard)
from je_load_density import post_teams_summary
post_teams_summary(
webhook_url="https://outlook.office.com/webhook/...",
title="Smoke run",
)
Uses the legacy MessageCard schema (widely supported by Office 365 webhooks).
Datadog DogStatsD
from je_load_density import start_statsd_sink, stop_statsd_sink
start_statsd_sink(host="dogstatsd", port=8125, prefix="loaddensity")
# … run actions …
stop_statsd_sink()
Three packets per request: requests:1|c, request.latency:N|ms,
response.size:N|h, all tagged with method / name /
outcome. Pure UDP, no SDK dependency.
Action JSON commands
Command |
Summary |
|---|---|
|
POST a Block Kit summary to a Slack webhook. |
|
POST a MessageCard summary to a Teams webhook. |
|
Toggle the DogStatsD UDP listener. |