1
0
mirror of https://github.com/ManyakRus/telegram_loki.git synced 2025-01-21 21:18:48 +02:00
2023-10-19 09:40:16 +03:00

68 lines
1.8 KiB
Go

package config
import (
"log"
"os"
"strconv"
)
// Settings хранит все нужные переменные окружения
var Settings SettingsINI
// SettingsINI - структура для хранения всех нужных переменных окружения
type SettingsINI struct {
LOKI_URL string
TELEGRAM_CHAT_NAME string
GRAFANA_LOGIN string
GRAFANA_PASSWORD string
INTERVAL_SEND_MINUTES int
TELEGRAM_MESSAGES_COUNT int
}
// FillSettings загружает переменные окружения в структуру из переменных окружения
func FillSettings() {
var err error
Settings = SettingsINI{}
Settings.TELEGRAM_CHAT_NAME = os.Getenv("TELEGRAM_CHAT_NAME")
Settings.LOKI_URL = os.Getenv("LOKI_URL")
Settings.GRAFANA_LOGIN = os.Getenv("GRAFANA_LOGIN")
Settings.GRAFANA_PASSWORD = os.Getenv("GRAFANA_PASSWORD")
Settings.INTERVAL_SEND_MINUTES, err = strconv.Atoi(os.Getenv("INTERVAL_SEND_MINUTES"))
if err != nil {
Settings.INTERVAL_SEND_MINUTES = 10
}
Settings.TELEGRAM_MESSAGES_COUNT, err = strconv.Atoi(os.Getenv("TELEGRAM_MESSAGES_COUNT"))
if err != nil || Settings.TELEGRAM_MESSAGES_COUNT == 0 {
Settings.TELEGRAM_MESSAGES_COUNT = 1
}
if Settings.TELEGRAM_CHAT_NAME == "" {
log.Panic("Error: Need fill TELEGRAM_CHAT_NAME")
}
if Settings.LOKI_URL == "" {
log.Panic("Error: Need fill LOKI_URL")
}
if Settings.GRAFANA_LOGIN == "" {
log.Panic("Error: Need fill GRAFANA_LOGIN")
}
if Settings.GRAFANA_PASSWORD == "" {
log.Panic("Error: Need fill GRAFANA_PASSWORD")
}
//
}
// CurrentDirectory - возвращает текущую директорию ОС
func CurrentDirectory() string {
Otvet, err := os.Getwd()
if err != nil {
//log.Println(err)
}
return Otvet
}