package main import ( "exporter/internal/app" "log" "net/http" "os" "github.com/prometheus/client_golang/prometheus/promhttp" ) func main() { log.SetOutput(os.Stdout) // Логируем в стандартный вывод log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile) exporter := app.NewMetricsExporter() // Используем кастомный реестр в обработчике /metrics http.Handle("/metrics", promhttp.HandlerFor(app.CustomRegistry, promhttp.HandlerOpts{})) http.HandleFunc("/update", exporter.JSONHandler) // Обработчик для приёма JSON port := ":9101" log.Printf("Starting server on port %s\n", port) if err := http.ListenAndServe(port, nil); err != nil { log.Fatalf("Error starting server: %s\n", err) } } //TODO: сделать переменные окружения, настроить канал, дописать юнит тесты, добавить интеграционные тесты