и посмотреть медиа
DevOps - preguntas de entrevista
и посмотреть медиа
Entrevistas con DevOps.
bot de IA para clonar texto a voz y voz en Telegram. Cree audio utilizando la red neuronal de forma rápida y fácil.
Preguntas de entrevista en DevOps.
🤔 Как сделать так чтобы клиенты отдавали метрики в Prometheus? В Prometheus данные собираются по pull-модели – сервер сам запрашивает метрики у клиентов. Чтобы клиенты отдавали метрики, нужно: 1. Настроить приложение на экспонирование метрик в формате Prometheus. 2. Добавить Prometheus job для сбора этих метрик. 3. Опционально – использовать Pushgateway, если pull-модель не подходит. 🚩Экспонирование метрик в формате Prometheus Если приложение написано на Go, Python, Java или Node.js. Prometheus предлагает официальные клиентские библиотеки: Go: [prometheus/client_golang](Ссылка скрыта Python: [prometheus_client](Ссылка скрыта Java: [simpleclient](Ссылка скрыта Node.js: [prom-client](Ссылка скрыта Пример для Python 1⃣Установим библиотеку pip install prometheus_client 2⃣Добавим в код экспонирование метрик from prometheus_client import start_http_server, Counter import time # Создаем счетчик запросов REQUEST_COUNT = Counter('app_requests_total', 'Total requests') def process_request(): REQUEST_COUNT.inc() # Увеличиваем счетчик time.sleep(1) # Имитация обработки запроса if __name__ == '__main__': start_http_server(8000) # Открываем метрики на 8000 порту while True: process_request() 🚩Пример для Node.js 1⃣Установим библиотеку: npm install prom-client express 2⃣Код сервера: const express = require('express'); const client = require('prom-client'); const app = express(); const collectDefaultMetrics = client.collectDefaultMetrics; collectDefaultMetrics(); const requestCounter = new client.Counter({ name: 'http_requests_total', help: 'Total HTTP requests', }); app.get('/', (req, res) => { requestCounter.inc(); res.send('Hello, World!'); }); app.get('/metrics', (req, res) => { res.set('Content-Type', client.register.contentType); res.end(client.register.metrics()); }); app.listen(3000, () => { console.log('Server running on port 3000'); }); 🚩Настроить Prometheus для сбора метрик Добавляем job в prometheus.yml scrape_configs: - job_name: 'my_app' static_configs: - targets: ['app_host:8000'] 🚩Push-модель через Pushgateway (если нужно) Если клиент не может сам отдавать метрики (например, это краткоживущий job), можно использовать Pushgateway. Запускаем Pushgateway: docker run -d -p 9091:9091 prom/pushgateway Отправляем метрики через curl echo "job_execution_time 5.3" | curl --data-binary @- Ссылка скрыта Настраиваем Prometheus на сбор данных из Pushgateway scrape_configs: - job_name: 'pushgateway' static_configs: - targets: ['localhost:9091'] Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиаSolo los usuarios registrados pueden compartir su opinión.
¡Sé el primero en compartir tu experiencia con este recurso!