require('dotenv').config(); const sequelize = require('./db'); // Подключение базы данных const { register, Counter } = require('prom-client'); // Подключаем библиотеку для мониторинга // Создаём метрики const messagesCounter = new Counter({ name: 'bot_messages_total', help: 'Total number of messages received by the bot', labelNames: ['type'], }); const errorsCounter = new Counter({ name: 'bot_errors_total', help: 'Total number of errors occurred in the bot', }); // Настраиваем глобальные переменные (опционально) global.path = require('path'); global.config = require('./config'); // Конфигурация global.database = sequelize; // База данных global.utils = require('./utils'); global.messagesCounter = messagesCounter global.errorsCounter = errorsCounter ////Metrics const express = require('express'); const app = express(); // Эндпоинт для метрик app.get('/metrics', async (req, res) => { try { res.set('Content-Type', register.contentType); res.end(await register.metrics()); } catch (err) { res.status(500).end(err.message); } }); // Запускаем HTTP-сервер на порту 3000 app.listen(3003, () => { console.log('Metrics server is running on http://localhost:3003/metrics'); }); //// // Инициализация бота require('./bot')