Skip to content

Commit

Permalink
Merge pull request #2233 from splunk/urbiz-OD6435-haproxy-rx
Browse files Browse the repository at this point in the history
[6435]: HAProxy receiver
  • Loading branch information
aurbiztondo-splunk authored Aug 13, 2024
2 parents a473080 + e69c1c9 commit 6074d7a
Show file tree
Hide file tree
Showing 5 changed files with 94 additions and 1 deletion.
1 change: 1 addition & 0 deletions _includes/gdi/otel-receivers-table.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
* :ref:`elasticsearch-receiver`
* :ref:`filelog-receiver`
* :ref:`fluentd-receiver`
* :ref:`haproxy-receiver`
* :ref:`host-metrics-receiver`
* :ref:`http-check-receiver`
* :ref:`jaeger-receiver`
Expand Down
4 changes: 3 additions & 1 deletion gdi/monitors-hosts/haproxy.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@ HAProxy
.. meta::
:description: Use this Splunk Observability Cloud integration for the HAProxy monitor. See benefits, install, configuration, and metrics

The Splunk Distribution of OpenTelemetry Collector uses the Smart Agent receiver with the
The Splunk Distribution of the OpenTelemetry Collector uses the Smart Agent receiver with the
HAProxy monitor type to monitor an HAProxy instance. This monitor
requires HAProxy 1.5+.

.. note:: To monitor your HAProxy instances you can instead use the native OpenTelemetry HAProxy receiver. To learn more, see :ref:`haproxy-receiver`.

Benefits
--------

Expand Down
3 changes: 3 additions & 0 deletions gdi/opentelemetry/components.rst
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,9 @@ The Splunk Distribution of the OpenTelemetry Collector includes and supports the
* - :ref:`fluentd-receiver` (``fluentforward``)
- Runs a TCP server that accepts events through the Fluentd Forward protocol.
- Logs
* - :ref:`haproxy-receiver` (``haproxy``)
- Generates metrics by polling periodically the HAProxy process through a dedicated socket or HTTP URL.
- Metrics
* - :ref:`host-metrics-receiver` (``hostmetrics``)
- Generates system metrics from various sources. Use this receiver when deploying the Collector as an agent.
- Metrics
Expand Down
1 change: 1 addition & 0 deletions gdi/opentelemetry/components/a-components-receivers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ Collector components: Receivers
elasticsearch-receiver
filelog-receiver
fluentd-receiver
haproxy-receiver
host-metrics-receiver
http-check-receiver
jaeger-receiver
Expand Down
86 changes: 86 additions & 0 deletions gdi/opentelemetry/components/haproxy-receiver.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
.. _haproxy-receiver:

***********************
HAProxy receiver
***********************

.. meta::
:description: The HAProxy receiver generates metrics by polling periodically the HAProxy process through a dedicated socket or HTTP URL

The HAProxy receiver generates metrics by polling periodically the HAProxy process through a dedicated socket or HTTP URL. The supported pipeline type is ``metrics``. See :ref:`otel-data-processing` for more information.

.. note:: Out-of-the-box dashboards and navigators aren't supported for the HAProxy receiver yet, but are planned for a future release.

Get started
======================

Follow these steps to configure and activate the component:

1. Deploy the Splunk Distribution of the OpenTelemetry Collector to your host or container platform:

- :ref:`otel-install-linux`
- :ref:`otel-install-windows`
- :ref:`otel-install-k8s`

2. Configure the receiver as described in the next section.
3. Restart the Collector.

Sample configurations
---------------------------

To activate the HAProxy receiver, add ``haproxy`` to the ``receivers`` section of your configuration file, as shown in the following example:

.. code:: yaml
receivers:
haproxy:
endpoint: file:///var/run/haproxy.ipc
collection_interval: 1m
metrics:
To complete the configuration, include the receiver in the ``metrics`` pipeline of the ``service`` section of your configuration file. For example:

.. code:: yaml
service:
pipelines:
metrics:
receivers: [haproxy]
Configuration options
--------------------------------------------

You can configure the following settings:

* ``endpoint``. :strong:`Required`. Path to the endpoint exposed by HAProxy for communications. It can be a local file socket or a HTTP URL.

* ``collection_interval``. Optional, ``1m`` by default. The scraping collection interval.

* ``initial_delay``. Optional, ``1s`` by default. Defines how long this receiver waits before starting.

Settings
======================

The following table shows the configuration options for the HAProxy receiver:

.. raw:: html

<div class="metrics-standard" category="included" url="https://raw.githubusercontent.com/splunk/collector-config-tools/main/cfg-metadata/receiver/haproxy.yaml"></div>

.. _haproxy-receiver-metrics:

Metrics
=====================

The following metrics, resource attributes, and attributes are available.

.. raw:: html

<div class="metrics-component" category="included" url="https://raw.githubusercontent.com/splunk/collector-config-tools/main/metric-metadata/haproxyreceiver.yaml"></div>

.. include:: /_includes/activate-deactivate-native-metrics.rst

Troubleshooting
======================

.. include:: /_includes/troubleshooting-components.rst

0 comments on commit 6074d7a

Please sign in to comment.