Пара минут —
и продукт как на ладони.
Технические и продуктовые метрики из вашего серверного и клиентского кода — и состояние самих машин. Дашборды, графики и алерты сразу в Телеграм — без PromQL, экспортеров и scrape-инфраструктуры.

Вы запустили проект. Что дальше?
Пока ваш проект на стадии MVP и ищет первых пользователей, полноценных метрик обычно немного или вообще нет. Не потому, что они не нужны, а просто потому, что вам было немного не до этого. Нынче «сделать нормально» — это настроить Prometheus, экспортеры, service discovery, Grafana и PromQL. Много всего, даже сейчас, когда под рукой ИИ-агенты.
Поэтому всё заканчивается одинаково: косвенно по логам, по встроенным инфраструктурным метрикам вы стараетесь держать руку на пульсе. Но когда уже что-то сломалось и вы не знаете что, или ещё хуже — когда вы даже не знаете что что-то сломалось, то вы начинаете невольно задумываться. Так вот, Простометрика — это таблетка от головной боли.
Всего три вызова.
Клиенты отправляют метрики самым эффективным и простым способом. Не нужно поднимать эндпоинты для скрейпинга, настраивать service discovery и открывать порты наружу. Вызовы ничего не блокируют — события накапливаются во внутреннем буфере в памяти. Вызов внутри горячего цикла почти ничего не стоит.
go get github.com/prostoteam/prostometrics-go
prostometrics.Init("billing-api", cfg)
prostometrics.Count("signups", 1)
prostometrics.Value("request.duration_ms", elapsedMs)
prostometrics.CountUnique(user.ID, "users.dau")npm install @prostoteam/prostometrics-node
init("billing-api", { apiKey: process.env.PROSTOMETRICS_API_KEY });
count("signups", 1);
value("request.duration_ms", elapsedMs);
countUnique(userId, "users.dau");pip install prostometrics
prostometrics.init("billing-api")
prostometrics.count("signups", 1)
prostometrics.value("request.duration_ms", elapsed_ms)
prostometrics.count_unique(user.id, "users.dau")npm install @prostoteam/prostometrics-web
init({ publicKey: "42_pk_..." });
count("web.checkout.step", 1, { step: "payment" });
value("web.api.duration_ms", elapsedMs);
unique("web.users.dau", user.id);Дайте сделать всё вашему агенту.
Для вашего AI друга у нас лежит отдельная инструкция: вы отдаёте агенту всего одну строку, дальше он всё сделает за вас.
Read https://prostometrics.ru/llms.txt and instrument this project with Prostometrics metrics, following that guide.- 01Сначала спросит, что вам нужно: биллинг, фронтенд, фоновые задачи — или чего не касаться
- 02Покажет план метрик по трём уровням: от самого нужного до опционального
- 03Ключ и workload попросит в самом конце — когда вы уже утвердили план
Состояние сервера — одной командой.
Состояние машины писать в коде не нужно — его собирает отдельный агент. Одна команда ставит его systemd-сервисом, дальше он сам присылает загрузку CPU, память, аптайм, место на дисках и сетевой трафик. Метрики группируются по имени машины, так что несколько серверов на одном дашборде не перепутаются.
curl -fsSL https://prostometrics.ru/agent.sh | sudo bash- 01Установщик спросит ключ проекта, поставит сервис и запустит его
- 02Через минуту на дашборде видно CPU, память, диски и сеть этой машины
- 03Контейнеры и Nginx агент находит сам, MongoDB — когда укажете подключение
Алерты приходят туда, куда надо.
В интуитивно понятном интерфейсе вы настраиваете пороги срабатывания алертов. В сообщении телеграм-бота вы видите метрику и пояснение, почему сработал алерт 🤌🏻.
status_class: 5xx · Workload: billing-apiОткрыть график14:32
Что ещё умеет Простометрика
Push-модель — и с сервера, и из браузера
Приложение само отправляет метрики: без service discovery, pull-эндпоинтов и открытых портов. Браузерный клиент весит меньше 5 КБ и не тянет зависимостей
Автоматические дашборды
Метрику не нужно объявлять заранее — она появляется в интерфейсе с первым событием
Фронтенд и бэкенд на одном графике
Время ответа, измеренное в браузере, рядом со временем обработки на сервере — видно, где именно теряются секунды
p50 + p95 + p99
Передавайте исходные значения один раз, а нужную функцию агрегации выбирайте уже во время анализа
Уникальные значения
DAU и MAU — в том числе прямо из браузера. Идентификатор не сохраняется, а хешируется
Алерты это просто
Алерты почти что в один клик. Удобные оповещения в телеграм
Шесть ситуаций, в которых мы точно полезны
Если узнали себя хотя бы в одной — дальше можно не читать, просто попробуйте.
Телеграм-боты и небольшие сервисы
«Бот работает. Сколько людей вчера дошли до оплаты — не знаю, надо лезть в логи.»
Веб-аналитика тут не работает, Prometheus — из пушки по воробьям. Счётчик на каждый хендлер и алерт в тот же телеграм, где живёт бот.
Соло-основатели с живым продуктом
«Я вчера выкатил фичу и понятия не имею, пользуется ей кто-нибудь или нет.»
Вам не нужна observability — нужен ответ на один вопрос. Три вызова в коде фичи, и завтра на дашборде видно, сколько людей до неё дошло.
Команды на 2–10 человек без девопса
«Нам сказали поднять Prometheus и Grafana. Это неделя работы, которую никто не хочет делать.»
Несколько сервисов на паре машин. Ставить, обновлять и чинить нечего: приложение отправляет метрики само, дашборды собираются без вас.
Бэкендеры, которым нужны продуктовые метрики
«Prometheus у нас есть. Но „сколько людей дошли до третьего шага чекаута“ я в нём моделировать не хочу.»
И не надо — мы работаем рядом, а не вместо. Инфраструктурные метрики остаются там, где были, продуктовые живут здесь.
Те, кто устал от сложных систем мониторинга
«Мне нужны три графика, а не платформа, которую надо изучать неделю.»
Никакого query language, никаких экспортеров и правил в YAML. Метрика появляется в интерфейсе с первым событием и сразу попадает на дашборд.
Те, кто пишет код вместе с агентом
«Если ставится одной строкой в Claude Code — поставлю сейчас. Если надо читать доку — потом.»
Одной строкой и ставится. Инструкция для агентов лежит открыто на /llms.txt — её же можно вставить руками, если ваш инструмент не ходит в интернет.
Управляете сотнями сервисов в Kubernetes? Скорее всего, вам лучше подойдёт Prometheus
Мы намеренно узкий инструмент. Вот честное сравнение с тремя вариантами, между которыми вы на самом деле выбираете.
| Простометрика | Логи и grep | Prometheus + Grafana | Внешний SaaS | |
|---|---|---|---|---|
| Отправка метрик | Вызов библиотечной функции | print() и парсинг | Инструментарий + exporters + scrape | SDK |
| Метрики из браузера | Тот же клиент и тот же дашборд | Нет | Не поддерживается | Отдельный продукт |
| Метрики хоста | Агент, одна команда | Нет | node_exporter и scrape-конфиг | Свой агент |
| Дашборды | Автоматические | Нет | Нужно настраивать | Нужно настраивать |
| Query language | Не нужен | grep и регулярки | PromQL | Свой DSL |
| Продуктовые метрики | Поддержаны | Вручную | Нужно моделировать | Поддержаны |
| Уники | Встроено, в том числе из браузера | Нет | Надо помучиться | Встроено |
| Алерты | Почти в один клик, в телеграм | Нет | Alertmanager и правила в YAML | Через интеграции |
| Для кого | Маленькие команды | Пока не выросли | Большая инфраструктура | Крупные компании |
То, что обычно спрашивают до регистрации
Нужно ли что-то ставить на сервер?
Для метрик приложения — нет, только библиотеку в проект: она отправляет метрики сама, без сайдкаров и без открытых наружу портов. Метрики самой машины — CPU, память, диски, сеть — собирает отдельный агент, который ставится одной командой. Он тоже только отправляет наружу, и ставить его не обязательно.
Нужно ли объявлять метрики заранее?
Нет. Метрика появляется в интерфейсе с первым событием и сразу попадает на дашборд — ничего не описывать в конфиге и не перезапускать.
Как разделить локальную разработку и продакшен?
Через workload — стабильное имя сервиса, которое вы передаёте при инициализации. Разные значения дают разные наборы метрик и разные дашборды.
Что будет при высокой кардинальности?
Количество уникальных комбинаций лейблов у метрики ограничено, чтобы одна опечатка в коде не съела память. Идентификаторы пользователей и заказов в лейблы класть не нужно — для вопроса «сколько разных пользователей» есть отдельный тип метрики.
Что происходит с идентификаторами пользователей?
Уникальные значения считаются вероятностно: идентификатор хешируется, а в исходном виде не сохраняется. Это работает и на сервере, и прямо из браузера.
Какие языки поддерживаются?
Go, Node.js и браузерный фронтенд. Браузерный клиент весит меньше 5 КБ и не тянет зависимостей.
От установки до первого графика — минуты
Три вызова в коде. Дашборды, графики и алерты уже ждут.