1.0.36 • Published 4 years ago

hepop v1.0.36

Weekly downloads
1
License
MIT
Repository
github
Last release
4 years ago

HEPop is a prototype stand-alone HEP Capture Server designed for HOMER7 capable of emitting indexed datasets and tagged timeseries to multiple backends in bulks. HEPop is developed using NodeJS and distributed using npm.

TLDR; instant, stand-alone, minimal HOMER Server without Kamailio or OpenSIPS dependency/options.

WARNING

This is a prototype under heavy development, please use it with caution and kindly report bugs!

Features

The core of hepop follows the latest homer data design and splits indexed data and timeseries, providing multiple backend options to choose from when prototype a custom capture solution.

Performance

During testing, HEPop bulking clocked about 10-15k/PPS per shared core on a Xeon(R) CPU E5-2660 v3 @ 2.60GHz

Supported Stores

TYPE
JSONPostgres (default), RethinkDB, MongoDB, Elasticsearch
TimeseriesInfluxDB (default), Prometheus, VictoriaMetrics

Supported Sources

SOCKETPROTOTYPE/IDDESCRIPTIONSTORESTATS
HEPHEP1SIPJSON + TSSIP methods, SIP responses
5RTCP ReportsTimeseriesRTCP, RTCPXR, X-RTP-Stat
34RTP Agent ReportTimeseriesRTP, RTCP Stats
100JSON LogsJSONString, JSON Object
1000+Dynamic TypesJSON
HTTP/SJANUSanyCustom JSON FieldsJSONsession_id, handle_id, opaque_id, event
34Media StatsTimeseriesRTCP Statistics
HTTP/SMEDIASOUPanyCustom JSON FieldsJSONroomId, peerName, producerId
producer.statsMedia StatsTimeseriesRTCP Statistics
transport.statsTransport StatsTimeseriesIP SRC/DST, Bytes in/out
HTTPSJITSIanyCustom JSON FieldsJSONreport counters
rtp.statsBrowser Media StatsTimeseriesRTCP Statistics
SIPFIXSIP (tcp/udp)SIP comm-monitorJSON + TSSIP methods, SIP responses
RTP QOS (stats)RTP Media statsTimeseriesRTP, RTCP Stats

Usage

Launch a dedicated instance of hepop per protocol using a custom configuration:

$ hepop -c ./myconfig.js

Docker

Try the bundled Docker compose

Config

See myconfig.js for an example configuration

Options:

    -V, --version                  output the version number
    -c, --configfile <configfile>  configuration file
    -s, --socket <socket>          socket service (udp,tcp,http,sipfix,mqtt) (default: udp)

Screenshots

homer7
influxdb

Made by Humans

This Open-Source project is made possible by actual Humans without corporate sponsors, angels or patreons. If you use this software in production, please consider supporting its development with contributions or donations

Donate