diff --git a/components/statsd.rst b/components/statsd.rst new file mode 100644 index 000000000..d10e59aa3 --- /dev/null +++ b/components/statsd.rst @@ -0,0 +1,54 @@ +.. _statsd: + +StatsD +======== + +.. seo:: + :description: Instructions for setting up a StatsD + :keywords: StatsD, metrics + +StatsD is a `protocol `_ to send metrics to a Daemon to store and aggregate them. +Today there are many monitoring solutions that support receiving metrics via the StatsD protocol. + +.. note:: + + This component will only work with Arduino for the ESP8266 since the `esphome::socket` implementation does not support UDP. + ESP32 will work fine with or without Arduino as Framework. + +.. code-block:: yaml + + # Example configuration entry + statsd: + host: 192.168.178.20 + prefix: esphome + sensors: + id: wlan_signal + name: test1.wifi.signal + + sensor: + platform: wifi_signal + id: wlan_signal + name: "WiFi Signal" + update_interval: 10s + + +This example will generate a metric named `esphome.test1.wifi.signal` with the value of the `wifi_signal` sensor. + + +Configuration variables: +------------------------ + +- **host** (**Required**, ip): The Host IP of your StatsD Server. +- **post** (*Optional*, uint16): The Port of your StatsD Server. Defaults to ``8125``. +- **prefix** (*Optional*, string): The prefix to automatically prepend every metric with. Defaults to ``""``. +- **update_interval** (*Optional*, uint16): How often to send the metrics. Defaults to ``10s``. +- **sensor** (*Optional*, :ref:`sensors`): A list of sensors to generate metrics for. +- **binary_sensor** (*Optional*, :ref:`sensors`): A list of binary sensors to generate metrics for. + +.. _sensors: + +Sensor list +----------- + +- **id** (**Required**, id): The ID of the sensor. +- **name** (**Required**, name): The Name of the metric the sensor value is send as. (Prefix is added to this name). diff --git a/index.rst b/index.rst index 3f6bdf1b8..438c9db94 100644 --- a/index.rst +++ b/index.rst @@ -176,6 +176,7 @@ Network Protocols HTTP Request, components/http_request, connection.svg, dark-invert mDNS, components/mdns, radio-tower.svg, dark-invert WireGuard, components/wireguard, wireguard_custom_logo.svg + StatsD, components/statsd, connection.svg Bluetooth/BLE ------------- @@ -197,6 +198,7 @@ Management and Monitoring Logger, components/logger, file-document-box.svg, dark-invert OTA Updates, components/ota, system-update.svg, dark-invert Prometheus, components/prometheus, prometheus.svg + StatsD, components/statsd, connection.svg Web Server, components/web_server, http.svg, dark-invert ESP32 Camera Web Server, components/esp32_camera_web_server, camera.svg, dark-invert