Skip to content

Commit da5dd53

Browse files
committed
Add documentation part
1 parent b06ebdd commit da5dd53

File tree

2 files changed

+51
-1
lines changed

2 files changed

+51
-1
lines changed

docs/images/datadog_monitoring.png

320 KB
Loading

docs/monitoring.md

Lines changed: 51 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ With it, you can control how many messages were sent, how many processed success
1414
How many consumers are working, their up time, processed messages stats, memory usage and system load.
1515
The tool could be integrated with virtually any analytics and monitoring platform.
1616
There are several integration:
17+
* [Datadog StatsD](https://datadoghq.com)
1718
* [InfluxDB](https://www.influxdata.com/) and [Grafana](https://grafana.com/)
1819
* [WAMP (Web Application Messaging Protocol)](https://wamp-proto.org/)
19-
2020
We are working on a JS\WAMP based real-time UI tool, for more information please [contact us](opensource@forma-pro.com).
2121

2222
![Grafana Monitoring](images/grafana_monitoring.jpg)
@@ -30,6 +30,7 @@ We are working on a JS\WAMP based real-time UI tool, for more information please
3030
* [Consumption extension](#consumption-extension)
3131
* [Enqueue Client Extension](#enqueue-client-extension)
3232
* [InfluxDB Storage](#influxdb-storage)
33+
* [Datadog Storage](#datadog-storage)
3334
* [WAMP (Web Socket Messaging Protocol) Storage](#wamp-(web-socket-messaging-protocol)-storage)
3435
* [Symfony App](#symfony-app)
3536

@@ -237,6 +238,50 @@ There are available options:
237238
* 'measurementConsumers' => 'consumers',
238239
```
239240

241+
## Datadog storage
242+
243+
Install additional packages:
244+
245+
```
246+
composer req datadog/php-datadogstatsd:^1.3
247+
```
248+
249+
```php
250+
<?php
251+
use Enqueue\Monitoring\GenericStatsStorageFactory;
252+
253+
$statsStorage = (new GenericStatsStorageFactory())->create('datadog://127.0.0.1:8125');
254+
```
255+
256+
For best experience please adjust units and types in metric summary.
257+
258+
Example dashboard:
259+
260+
![Datadog monitoring](images/datadog_monitoring.png)
261+
262+
263+
There are available options (and all available metrics):
264+
265+
```
266+
* 'host' => '127.0.0.1',
267+
* 'port' => '8125',
268+
* 'batched' => true, // performance boost
269+
* 'global_tags' => '', // should contain keys and values
270+
* 'metric.messages.sent' => 'enqueue.messages.sent',
271+
* 'metric.messages.consumed' => 'enqueue.messages.consumed',
272+
* 'metric.messages.redelivered' => 'enqueue.messages.redelivered',
273+
* 'metric.messages.failed' => 'enqueue.messages.failed',
274+
* 'metric.consumers.started' => 'enqueue.consumers.started',
275+
* 'metric.consumers.finished' => 'enqueue.consumers.finished',
276+
* 'metric.consumers.failed' => 'enqueue.consumers.failed',
277+
* 'metric.consumers.received' => 'enqueue.consumers.received',
278+
* 'metric.consumers.acknowledged' => 'enqueue.consumers.acknowledged',
279+
* 'metric.consumers.rejected' => 'enqueue.consumers.rejected',
280+
* 'metric.consumers.requeued' => 'enqueue.consumers.requeued',
281+
* 'metric.consumers.memoryUsage' => 'enqueue.consumers.memoryUsage',
282+
```
283+
284+
240285
## WAMP (Web Socket Messaging Protocol) Storage
241286

242287
Install additional packages:
@@ -280,6 +325,11 @@ enqueue:
280325
transport: 'amqp://guest:guest@foo:5672/%2f'
281326
monitoring: 'wamp://127.0.0.1:9090?topic=stats'
282327
client: ~
328+
329+
datadog:
330+
transport: 'amqp://guest:guest@foo:5672/%2f'
331+
monitoring: 'datadog://127.0.0.1:8125?batched=false'
332+
client: ~
283333
```
284334
285335
[back to index](index.md)

0 commit comments

Comments
 (0)