OvenMediaEngine Exporter for Prometheus
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
genofire 8c7ccf7e9f fix(helper): use int64 for date -> easier use with golang time.Unix 3 months ago
.ci feat(ci): build docker image 1 year ago
api improve config reading from env and other file formats 10 months ago
contrib add api default values + rename host to url 2 years ago
docs chore(docs): fix typo in antora 3 months ago
helper fix(helper): use int64 for date -> easier use with golang time.Unix 3 months ago
.gitignore Init 2 years ago
.gitlab-ci.yml feat(ci): versioning 10 months ago
Dockerfile improve config reading from env and other file formats 10 months ago
README.adoc chore: start writing adoc/antora documentation 3 months ago
config_example.toml improve docs for installing 2 years ago
go.mod feat: add policy with signing for Access Control 3 months ago
go.sum feat: add policy with signing for Access Control 3 months ago
main.go improve config reading from env and other file formats 10 months ago
prometheus.go change to zap.Logger 2 years ago

README.adoc

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

== Oven-Exporter

An Prometheus Exporter for OvenMediaEngine

(it provides also a small API-Client for OvenMediaEngine) Be welcome to improve it.

=== Configure OvenMediaEngine

This Exporter use the REST-API of OvenMediaEngine, to setting it up, that a look in there Documentation https://airensoft.gitbook.io/ovenmediaengine/rest-api[OvenMediaEngine REST-API].

=== Setup Exporter

==== Compile

Install https://golang.org/doc/install[golang].

Run: `go install -v dev.sum7.eu/genofire/oven-exporter@latest`

==== Configuration

Read comments in config_example.toml for more information.

Maybe a good place to store this file is: `/etc/ovenmediaengine/exporter.conf`

OR use env variables:

....
OVEN_E_LISTEN=:8080
OVEN_E_API__URL=http://1.2.3.4:8081
OVEN_E_API__TOKEN=ome-access-token
OVEN_E_API__DEFAULT_VHOST=
OVEN_E_API__DEFAULT_APP=
....

(File read could be disabled by call `oven-exporter -c ''`

==== Startup

Create a systemd.service file e.g. under `/etc/systemd/system/oven-exporter.service` with maybe a content like this:

[source,ini]
----
[Unit]
Description = Prometheus exporter for OvenMediaEngine

[Service]
Type=simple
ExecStart=/usr/local/bin/oven-exporter -c /etc/ovenmediaengine/exporter.conf
Restart=always
RestartSec=5s
Environment=PATH=/usr/bin:/usr/local/bin

[Install]
WantedBy=multi-user.target
----

PS: maybe you need to adjust the binary path and configuration path.

Start and enable on boot: `systemctl enable --now oven-exporter.service`