hepop

    1.0.36 • Public • Published

    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
    JSON Postgres (default), RethinkDB, MongoDB, Elasticsearch
    Timeseries InfluxDB (default), Prometheus, VictoriaMetrics

    Supported Sources

    SOCKET PROTO TYPE/ID DESCRIPTION STORE STATS
    HEP HEP 1 SIP JSON + TS SIP methods, SIP responses
    5 RTCP Reports Timeseries RTCP, RTCPXR, X-RTP-Stat
    34 RTP Agent Report Timeseries RTP, RTCP Stats
    100 JSON Logs JSON String, JSON Object
    1000+ Dynamic Types JSON
    HTTP/S JANUS any Custom JSON Fields JSON session_id, handle_id, opaque_id, event
    34 Media Stats Timeseries RTCP Statistics
    HTTP/S MEDIASOUP any Custom JSON Fields JSON roomId, peerName, producerId
    producer.stats Media Stats Timeseries RTCP Statistics
    transport.stats Transport Stats Timeseries IP SRC/DST, Bytes in/out
    HTTPS JITSI any Custom JSON Fields JSON report counters
    rtp.stats Browser Media Stats Timeseries RTCP Statistics
    SIPFIX SIP (tcp/udp) SIP comm-monitor JSON + TS SIP methods, SIP responses
    RTP QOS (stats) RTP Media stats Timeseries RTP, 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

    Install

    npm i hepop

    DownloadsWeekly Downloads

    9

    Version

    1.0.36

    License

    MIT

    Unpacked Size

    86.4 kB

    Total Files

    34

    Last publish

    Collaborators

    • lmangani