mirror of
https://github.com/owncast/owncast.git
synced 2024-11-24 05:38:58 +03:00
babbcecc9c
* WIP playback metrics * Playback metrics collecting + APIs. Closes #793 * Cleanup console messages * Update test * Increase browser test timeout * Update browser tests to not fail
55 lines
1.7 KiB
Go
55 lines
1.7 KiB
Go
package metrics
|
|
|
|
import (
|
|
"github.com/prometheus/client_golang/prometheus"
|
|
"github.com/prometheus/client_golang/prometheus/promauto"
|
|
)
|
|
|
|
var (
|
|
labels map[string]string
|
|
activeViewerCount prometheus.Gauge
|
|
activeChatClientCount prometheus.Gauge
|
|
cpuUsage prometheus.Gauge
|
|
chatUserCount prometheus.Gauge
|
|
currentChatMessageCount prometheus.Gauge
|
|
playbackErrorCount prometheus.Gauge
|
|
)
|
|
|
|
func setupPrometheusCollectors() {
|
|
// Setup the Prometheus collectors.
|
|
activeViewerCount = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Name: "owncast_instance_active_viewer_count",
|
|
Help: "The number of viewers.",
|
|
ConstLabels: labels,
|
|
})
|
|
|
|
activeChatClientCount = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Name: "owncast_instance_active_chat_client_count",
|
|
Help: "The number of connected chat clients.",
|
|
ConstLabels: labels,
|
|
})
|
|
|
|
chatUserCount = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Name: "owncast_instance_total_chat_users",
|
|
Help: "The total number of chat users on this Owncast instance.",
|
|
ConstLabels: labels,
|
|
})
|
|
|
|
currentChatMessageCount = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Name: "owncast_instance_current_chat_message_count",
|
|
Help: "The number of chat messages currently saved before cleanup.",
|
|
ConstLabels: labels,
|
|
})
|
|
|
|
playbackErrorCount = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Name: "owncast_instance_playback_error_count",
|
|
Help: "Errors collected from players within this window",
|
|
ConstLabels: labels,
|
|
})
|
|
|
|
cpuUsage = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Name: "owncast_instance_cpu_usage",
|
|
Help: "CPU usage as seen internally to Owncast.",
|
|
ConstLabels: labels,
|
|
})
|
|
}
|