Skill v1.0.1
Automated scan100/100+1 new
version: "1.0.1" name: tech-log-analysis description: "Use for управления жизненным циклом технологического журнала 1С (ТЖ): настройка, включение, сбор, анализ, восстановление. Helps диагностировать медленные запросы, блокировки и исключения платформы, недоступные в ЖР." uses_capabilities:
- search_tech_log
- configure_tech_log
- logc_get_techlog_config
- logc_save_techlog
- logc_restore_techlog
- logc_disable_techlog
Работа с технологическим журналом 1С (Tech Log)
ТЖ нагружает систему. Включать точечно, с минимальным набором событий. Всегда восстанавливать конфигурацию после диагностики.
Для Vanessa — ТЖ последний источник диагностики; сначала event-log-analysis и визуальная проверка UI-блокеров.
Для ошибок и аудита действий пользователей — event-log-analysis.
Когда применять
| Триггер | Действие | |
|---|---|---|
| Медленный запрос — нужно найти SQL | search_tech_log с name: "DBMSSQL" / "DBPOSTGRS" | |
| Блокировки, deadlock | search_tech_log с name: "TLOCK" / "TDEADLOCK" / "TTIMEOUT" | |
| Исключение платформы не в ЖР | search_tech_log с name: "EXCP" | |
| Долгий серверный вызов | search_tech_log с name: "CALL" или "SCALL" | |
| Статус ТЖ неизвестен | logc_get_techlog_config — прочитать конфигурацию | |
| ТЖ не ведётся | Полный цикл (см. алгоритм ниже) |
Полный цикл диагностики
Единый алгоритм для пассивного (ждём воспроизведения) и активного (запускаем тест) режимов.
1. Сохранить конфигурацию
logc_save_techlog()
Возвращает backup_id — сохранить для шага 7.
2. Настроить события
logc_configure_techlog(location: "/var/log/1c/techlog",history: 24,events: ["EXCP", "DBMSSQL", "TLOCK", "TDEADLOCK"])
3. Проверить, что сбор идёт
logc_get_actual_log_timestamp()
4. Воспроизвести проблему / дождаться воспроизведения
5. Smart polling готовности лога
До 10 попыток с паузой 3–5 сек: logc_get_actual_log_timestamp() >= целевое_время. Если не дошло — сообщить пользователю, не делать выводов по неполному окну.
6. Прочитать записи
search_tech_log(from: "2025-02-11T14:00:00Z",to: "2025-02-11T14:15:00Z",name: "DBMSSQL",min_duration: 1000)
7. Восстановить конфигурацию
logc_restore_techlog(backup_id: "...")
8. Подтвердить статус пользователю: ТЖ восстановлен / ТЖ отключён / Минимальный профиль (события: ...).
Шаги 1 и 7 — обязательны. Никогда не оставлять ТЖ включённым после диагностики без явного согласования.
Варианты цикла
ТЖ уже настроен администратором — только чтение:
logc_get_techlog_config→ убедиться в наличии нужных событий.logc_get_actual_log_timestamp→ сбор актуален.search_tech_log→ читать записи.- НЕ изменять конфигурацию — ТЖ не наш.
Срочное отключение (диск заполняется): logc_disable_techlog(). После решения — logc_restore_techlog(backup_id).
Минимальный мониторинг (вместо полного отключения, только по согласованию): события ["EXCP", "CONN"]. Зафиксировать в ответе активные события и ответственного.
События ТЖ
| Событие | Когда использовать | |
|---|---|---|
EXCP | Ошибки, не видные в ЖР | |
DBMSSQL | Медленные запросы MS SQL | |
DBPOSTGRS | Медленные запросы PostgreSQL | |
TLOCK | Конфликты блокировок | |
TDEADLOCK | Взаимоблокировки | |
TTIMEOUT | Таймауты блокировок | |
CALL / SCALL | Медленные серверные вызовы | |
CONN | Проблемы подключения | |
SDBL | Трансляция запросов в SQL |
Стандартный набор: ["EXCP", "DBMSSQL", "TLOCK", "TDEADLOCK"]
Capabilities
| Capability | Назначение | |
|---|---|---|
search_tech_log | Поиск по записям ТЖ | |
logc_get_techlog_config | Прочитать текущую конфигурацию ТЖ | |
logc_save_techlog | Сохранить конфигурацию перед изменением | |
logc_configure_techlog | Настроить события, путь, период хранения | |
logc_get_actual_log_timestamp | Проверить, что сбор идёт | |
logc_restore_techlog | Восстановить сохранённую конфигурацию | |
logc_disable_techlog | Отключить ТЖ | |
navigate_symbol | Переход к коду по контексту из записи ТЖ |
Сценарные приёмы
См. `references/scenarios.md` для классификации инцидентов, обязательных идентификаторов, timeline-правил и шаблона вывода.
Типичные ошибки
| Ошибка | Обходной путь | |
|---|---|---|
Забыли logc_save_techlog перед настройкой | Спросить пользователя о текущей конфигурации | |
ТЖ не активен после configure | Платформа требует перезапуска служб | |
logc_get_actual_log_timestamp не обновляется | Служба не перезапущена или неверный location | |
| Слишком много событий — диск заполняется | Ограничить набор событий; уменьшить history | |
search_tech_log возвращает пусто | Проверить окно времени; событие должно быть после включения ТЖ |
depends_on: []