Документация
Быстрый старт
От регистрации до первой ошибки в dashboard — три шага и несколько минут.
1. Регистрация
Откройте страницу регистрации на https://dev-logs.ru и создайте аккаунт. После входа вы попадёте в личный кабинет.
2. Проект и DSN
- В кабинете нажмите Новый проект и укажите название приложения.
- Откройте Настройки проекта (
/projects/<id>/settings) — там отображается публичный DSN-ключ. Скопируйте его для SDK.
devlogs-collector в свой docker-compose.yml — см. раздел Запуск с вашими сервисами.Альтернатива: Docker Compose + коллектор
Один контейнер devlogs-collector в вашем docker-compose следит за всеми сервисами stack: логи, падения и OOM попадают в DevLogs без правок кода и без SDK в каждом образе.
- API-ключ. Профиль кабинета → создайте ключ dl_live_… — одного ключа хватает на все compose stack организации.
- Добавьте коллектор в свой compose. В существующий docker-compose.yml добавьте сервис devlogs-collector (см. пример). Ваши api, worker, nginx менять не нужно.
- Запустите stack. export DEVLOGS_API_KEY=dl_live_… && docker compose up -d — поднимутся и приложения, и коллектор.
- Коллектор следит за контейнерами. Через docker.sock агент читает stdout/stderr. По умолчанию — только контейнеры docker compose (не CI helper без labels). Явный whitelist: DEVLOGS_DOCKER_SERVICES=api,worker,db. На сервере с GitFlic/GitLab runner не включайте DEVLOGS_DOCKER_ALL_CONTAINERS.
- Смотрите issues в кабинете. Кабинет → Коллекторы: один проект на compose stack (имя stack), внутри — issue groups по сервисам (api, worker, …). DSN можно скопировать для SDK, если понадобится.
# Положите рядом с docker-compose.yml или экспортируйте в shell DEVLOGS_API_KEY=dl_live_YOUR_KEY_FROM_PROFILE DEVLOGS_SERVER_URL=https://dev-logs.ru DEVLOGS_ENVIRONMENT=production # DEVLOGS_DOCKER_PROJECT_MAP=stack # по умолчанию: один проект на compose stack # DEVLOGS_DOCKER_SERVICES=api,worker,db # db,redis или billing:db,shop:postgres # DEVLOGS_DOCKER_COMPOSE_PROJECT=billing,shop # опционально — только эти compose project
# docker-compose.yml — ваши сервисы + мониторинг DevLogs
# Имя compose project (mystack) → один проект в кабинете; сервисы api/worker → issue groups
services:
api:
image: myorg/api:latest
restart: unless-stopped
environment:
DATABASE_URL: postgres://app@db:5432/app
depends_on:
- db
worker:
image: myorg/worker:latest
restart: unless-stopped
depends_on:
- db
db:
image: postgres:16-alpine
restart: unless-stopped
volumes:
- pgdata:/var/lib/postgresql/data
# Sidecar: читает логи ВСЕХ контейнеров этого compose через docker.sock
devlogs-collector:
image: registry.melnikovit.ru/dev-logs/devlogs-collector:0.5.5
command: ["docker"]
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- devlogs-collector-cache:/var/lib/devlogs-collector
environment:
DEVLOGS_API_KEY: ${DEVLOGS_API_KEY}
DEVLOGS_SERVER_URL: ${DEVLOGS_SERVER_URL:-https://dev-logs.ru}
DEVLOGS_ENVIRONMENT: ${DEVLOGS_ENVIRONMENT:-production}
DEVLOGS_DOCKER_PROJECT_MAP: ${DEVLOGS_DOCKER_PROJECT_MAP:-stack}
# DEVLOGS_DOCKER_SERVICES: api,worker,db
DEVLOGS_COLLECTOR_CACHE_DIR: /var/lib/devlogs-collector
volumes:
pgdata:
devlogs-collector-cache:# 1. Ключ из кабинета → профиль
export DEVLOGS_API_KEY=dl_live_YOUR_KEY
# 2. Запуск stack (api, worker, db + коллектор)
docker compose up -d
# 3. Проверка коллектора
docker compose logs -f devlogs-collector
docker run --rm -e DEVLOGS_API_KEY -e DEVLOGS_SERVER_URL \
registry.melnikovit.ru/dev-logs/devlogs-collector:0.5.5 doctor
# 4. Симуляция ошибки в сервисе (опционально)
docker compose exec api node -e "console.error('test error'); process.exit(1)"Проекты и DSN появятся в кабинет → Коллекторы. Подробнее — документация коллекторов. Только PostgreSQL / MySQL / Redis без приложения — коллектор + база данных.
3. Подключение SDK
Выберите пакет для вашего стека в каталоге SDK (dev-logs.ru/sdk) или следуйте полному руководству по SDK. В настройках проекта — блок «Установка SDK» с вашим DSN и командами для основных языков.
Минимальная инициализация для JavaScript (v0.4.0):
npm install devlogs-sdk-js@0.4.0 \ --registry https://git.melnikovit.ru/registry/package/-/npm/
import { init, captureError } from "devlogs-sdk-js";
init({
dsn: "ВАШ_DSN_ИЗ_НАСТРОЕК",
serverUrl: "https://dev-logs.ru",
release: "1.0.0",
environment: "production",
gitCommit: process.env.NEXT_PUBLIC_GIT_COMMIT,
});
captureError(new Error("тестовая ошибка"));В CI пробросьте CI_COMMIT_SHA в NEXT_PUBLIC_GIT_COMMIT или DEVLOGS_GIT_COMMIT — см. Git-коммит.
Go — go get, не npm. Git-only SDK (Swift, Unity…) — git clone. Подробности — в /docs/sdk.
4. Первая ошибка
Вызовите тестовую ошибку в приложении или отправьте событие вручную через curl (подставьте свой DSN):
curl -s -X POST "https://dev-logs.ru/api/ingest" \
-H "Content-Type: application/json" \
-d '{
"dsn": "ВАШ_DSN",
"message": "Тестовая ошибка DevLogs",
"level": "error",
"type": "TestError"
}'При успехе API вернёт 201 с errorId и fingerprint. Issue появится в кабинет → проект → Issues.
Дальше
- Коллекторы — Docker/K8s/логи без SDK, auto-provision проектов.
- Полное руководство по SDK — DSN, установка, проверка, просмотр ошибок.
- Настройте алерты — Telegram, email или webhooks.
- Загрузите source maps для читаемого stack trace в production.
- REST API — автоматизация и CI.