view mod_http_stats_stream/README.markdown @ 5853:97c9b76867ca

mod_log_ringbuffer: Detach event handlers on logging reload (thanks Menel) Otherwise the global event handlers accumulate, one added each time logging is reoladed, and each invocation of the signal or event triggers one dump of each created ringbuffer.
author Kim Alvefur <zash@zash.se>
date Sun, 03 Mar 2024 11:23:40 +0100
parents bac3dae031ee
children
line wrap: on
line source

---
depends:
- 'mod\_http'
provides:
- http
---

# Introduction

This module provides a streaming interface to [Prosodys internal statistics][doc:statistics] via
[Server-sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events).

## Example

```js
var evtSource = new EventSource("/stats_stream");

/*
 * An event with all current statistics in the form of a JSON object.
 * Normally sent only once, when first connected to the stream.
 */
evtSource.addEventListener("stats-full", function(e) {
	var initial_stats = JSON.parse(e.data);
	console.log(initial_stats);
}, false);

/*
 * An event containing only statistics that have changed since the last
 * 'stats-full' or 'stats-updated' event.
 */
evtSource.addEventListener("stats-updated", function(e) {
	var updated_stats = JSON.parse(e.data);
	console.log(updated_stats);
}, false);
```

# Compatibility

* Prosody \>= 0.11.0
* Trunk < [5f15ab7c6ae5](https://hg.prosody.im/trunk/rev/5f15ab7c6ae5)