start
Это старая версия документа!
Добавление ошибок в проект
Аутентификация к API запросу происходит через токен проекта. Его можно найти в интерфейсе редактирования проекта в поле Токен.
Передаваемые поля
Для отправки ошибки необходимо передать следующие поля в параметре `params` метода `Error.create`:
- error_type — тип исключения (например, `ValueError`)
- error_message — текст ошибки
- timestamp — время возникновения ошибки в формате ISO 8601 (UTC)
- environment — окружение (например, `production`, `local`)
- release — версия релиза (например, `v1.2.3`)
- platform — операционная система (например, `linux`, `windows`)
- language_version — версия языка (например, `3.12`)
- user_id — идентификатор пользователя (опционально)
- user_email — email пользователя (опционально)
- request_data — данные запроса, если доступны (например, параметры запроса, путь и т.д.)
- stack_trace — список фреймов трассировки, где каждый элемент содержит:
- file — путь к файлу
- line — номер строки
- function — имя функции
- code — строка кода
- index — индекс фрейма в стеке
- tags — список тегов в формате: `{ «key»: «ключ», «value»: «значение» }`
Пример передачи ошибки
stack = traceback.extract_tb(e.__traceback__) stack_trace = [ { "file": frame.filename, "line": frame.lineno, "function": frame.name, "code": frame.line, "index": i } for i, frame in enumerate(stack) ] error_data = { "error_type": type(e).__name__, "error_message": str(e), "timestamp": datetime.utcnow().isoformat(), "environment": "local", "release": "test-1.0", "platform": "linux", "language_version": "3.12", "user_id": "global-handler", "user_email": "handler@example.com", "request_data": {}, "stack_trace": stack_trace, "tags": [{"key": "source", "value": "global-handler"}] } def send_error_to_api(error_data: dict): headers = { 'Content-Type': 'application/json', 'Authorization': 'Ваш токен проекта' } payload = { "jsonrpc": "2.0", "method": "Error.create", "params": error_data, "id": 1 } response = requests.post(API_URL, json=payload, headers=headers) response.raise_for_status() return response.json()
start.1748276035.txt.gz · Последнее изменение: — admin
