42 lines
1.3 KiB
Go
42 lines
1.3 KiB
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"git.insit.tech/psa/rtsp_reader-writer/writer/internal/metrics"
|
|
"github.com/prometheus/client_golang/prometheus"
|
|
"github.com/prometheus/client_golang/prometheus/collectors"
|
|
"github.com/prometheus/client_golang/prometheus/promhttp"
|
|
"log"
|
|
"net/http"
|
|
"time"
|
|
|
|
"git.insit.tech/psa/rtsp_reader-writer/writer/internal/config"
|
|
"git.insit.tech/psa/rtsp_reader-writer/writer/internal/ingest/rtsp"
|
|
logger "git.insit.tech/psa/rtsp_reader-writer/writer/internal/log"
|
|
log2 "git.insit.tech/sas/rtsp_proxy/core/log"
|
|
)
|
|
|
|
func main() {
|
|
// Регистрируем стандартные метрики
|
|
appRegistry := prometheus.NewRegistry()
|
|
appRegistry.MustRegister(collectors.NewGoCollector())
|
|
appRegistry.MustRegister(collectors.NewProcessCollector(collectors.ProcessCollectorOpts{}))
|
|
appRegistry.MustRegister(metrics.ActiveCameras)
|
|
|
|
//// Эндпоинт для метрик
|
|
http.Handle("/metrics", promhttp.HandlerFor(appRegistry, promhttp.HandlerOpts{}))
|
|
|
|
config.LogsDirectory = log2.DirCreator(config.Local, "logs")
|
|
logger.Log = log2.MainLogging(
|
|
fmt.Sprintf("%s/writer-main_%s.log", config.LogsDirectory, time.Now().Format("15-04-05_02-01-2006")))
|
|
|
|
rtsp.StartWriter()
|
|
|
|
// Запуск сервера на порту 9110
|
|
err := http.ListenAndServe(":9110", nil)
|
|
if err != nil {
|
|
log.Println(err)
|
|
}
|
|
select {}
|
|
}
|