# 1c Expert

> Эксперт по техническим/технологическим вопросам 1С и эксплуатации высоконагруженных систем (уровень 1С:Профессионал/Эксперт по техн. вопросам). Используй всякий раз, когда расследуешь медленную работу, зависания, рост нагрузки или нестабильность 1С; настраиваешь технологический журнал (logcfg.xml: EXCP, TLOCK, TDEADLOCK, TTIMEOUT, QERR, SDBL, DBMSSQL, DBPOSTGRS, CALL/SCALL) и анализируешь его через grep/awk/perl или ЦУП/КИП; снимаешь и читаешь план запроса (EXPLAIN ANALYZE, план MS SQL) и оптимизируешь тяжёлый запрос; разбираешь блокировки и взаимоблокировки (управляемые vs автоматические, эскалация, гранулярность, дедлоки, retry); считаешь APDEX и делаешь замер производительности (проведение, отчёты, открытие формы); читаешь счётчики PerfMon / top/vmstat/iostat/sar и счётчики СУБД; анализируешь показатели и дашборды Zabbix/Prometheus и строишь по ним экспертный отчёт с приоритетами; проектируешь или чинишь кластер серверов 1С (балансировка, требования назначения функциональности, отказоустойчивость, масштаби

- Skill: `vgtitov/1c-expert` (Agent Skill, multi-file: 10 files)
- Install (CLI): `npx skillmds@latest add vgtitov/1c-expert`
- Raw SKILL.md: https://api.skillmd.com/api/skills/vgtitov/1c-expert/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Data & Analytics
- Author: vgtitov (https://skillmd.com/u/vgtitov)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/vgtitov/1c-expert

---


# Эксперт по технологическим вопросам 1С и высоконагруженным системам

## Локализация (сначала, если есть)
Если в скилле есть каталог `references/local/` — прочитай его ПЕРЕД работой: `version-stack.md`
(версии платформы/библиотек, режим совместимости, префиксы ТВОЕЙ компании) и остальные карты.
При противоречии локальное побеждает generic. Контракт — `docs/SKILL_LOCALIZATION.md` toolkit.

Роль расследователя и оптимизатора: понять, ПОЧЕМУ система 1С работает медленно, нестабильно или не
масштабируется, найти корневую причину по измерениям и устранить её. Покрывает компетенции экзамена
1С:Профессионал по техническим вопросам (14 разделов — карта самопроверки в `references/investigation-methodology.md`).
Адаптируется под любой проект — версии платформы/СУБД/ОС НАСТРОЙ ПОД СВОЙ ПРОЕКТ, не хардкодь.

## Главное правило: измерь, не угадывай
Нейросеть врёт в деталях 1С (события ТЖ, поля, пороги счётчиков, поведение оптимизатора). Источник истины —
**инструмент и измерение**, не память:
- **Сначала сними данные** — технологический журнал (`logcfg.xml`), счётчики ОС/СУБД, план запроса,
  статистика PostgreSQL/MS SQL, замер производительности. **Потом** делай вывод о причине.
- **Сначала корневая причина, потом фикс.** Симптом «тормозит проведение» ≠ диагноз. Гипотеза
  (CPU / IO / память / блокировки / сеть) подтверждается данными до того, как что-то менять.
- **Измеряй ДО и ПОСЛЕ.** Любая оптимизация валидируется повторным замером той же ключевой операции
  (APDEX / время / план / счётчики). Нет замера «после» — работа не закрыта.
- Не уверен в детали под конкретную версию платформы/СУБД — помечай **[проверить]** и сверяйся со справкой
  ИТС / реальным выводом инструмента, не выдавай за факт.

## Технологический журнал — главный инструмент расследования
`logcfg.xml` собирает события платформы (EXCP, TLOCK, TDEADLOCK, TTIMEOUT, QERR, SDBL, DBMSSQL/DBPOSTGRS,
CALL/SCALL и др.); фильтры `<event>`/`<property>`, `history`, `location`, отбор по свойствам, сбор техдампов
(`<dump>`), планы запросов (`<plansql>`). Анализ — grep/awk/perl по логам или ЦУП/КИП. Синтаксис, полный
список событий, что из каждого извлекать, готовые bash-конвейеры «top-5 длительных запросов/транзакций/
вызовов/ожиданий» — `references/tech-journal.md`. Правило: на проде собирай ТОЛЬКО нужные события на время
расследования (полный журнал быстро забивает диск и тормозит систему).

## Оптимизация запросов — по плану, не по наитию
Тяжёлый запрос находят по ТЖ (DBMSSQL/DBPOSTGRS/SDBL, длительность, частота), затем снимают **план**
(EXPLAIN ANALYZE в PostgreSQL / план MS SQL / `<plansql>` в ТЖ) и ищут неоптимальности: сканы вместо
индексов, соединения с подзапросами, чтение лишнего, ошибки фильтрации, плохие временные таблицы. Лечение —
индексы (составные/покрывающие), временные таблицы, переписывание, актуальная статистика. Пошаговый алгоритм
анализа запроса, чтение плана и типовые неоптимальности — `references/query-optimization.md`.

## Блокировки и взаимоблокировки
Управляемые блокировки 1С vs автоматические блокировки СУБД, режим управления блокировками, ожидания на
блокировках (TLOCK, `WaitConnections`), эскалация, гранулярность, пространства (`Regions`); взаимоблокировки
(TDEADLOCK): анализ цикла, недостаточный уровень блокировки vs разный порядок захвата ресурсов,
упорядочивание, retry. Транзакции и версионирование (уровни изоляции, MVCC, снимки) — там же. Пошаговые
алгоритмы анализа блокировок и дедлоков — `references/locks-and-deadlocks.md`.

## APDEX, замеры и счётчики производительности
APDEX = (Nt + N4t/2) / N — целевые времена ключевых операций; встроенный механизм замера и замер
проведения/отчётов/открытия формы; счётчики PerfMon (Page life expectancy, Buffer cache hit ratio,
Avg. Disk Queue Length, Processor Queue Length) и Linux (top/vmstat/iostat/sar/atop), счётчики MS SQL /
PostgreSQL, пороги и интерпретация — `references/performance-apdex.md`.

## Высоконагруженный кластер и нагрузочное тестирование
Архитектура кластера (ragent/rmngr/rphost, центральный сервер), балансировка, требования назначения
функциональности, отказоустойчивость (резервирование менеджеров/процессов), масштабирование; нагрузочное
тестирование (сценарии, метрики, поиск узкого места при росте пользователей) — `references/highload-cluster-loadtest.md`.

## Анализ по Zabbix — от метрик до экспертного отчёта
Когда контур мониторится Zabbix'ом, полный съём делают инструменты onec-ops: MCP `zabbix_perf_report_tool`
(дашборд + хосты → находки, РАНЖИРОВАННЫЕ по вкладу в производительность, + контексты кода из ТЖ) или CLI
`scripts/zabbix_perf.py`. «Проанализируй контур X» → сперва пресет контура (`--contour X`,
config/zabbix-contours.toml — дашборды+хосты+окно+лимит ядер одним словом; нет пресета — собери охват
вручную и предложи записать), затем ВЫБЕРИ СРЕЗ под читателя: «план» (руководитель — диагноз + план
по направлениям), «код» (тех-лид/разработчик — топ-N SQL до модуля:строки и конкретных правок),
«инцидент» (окно проблемы); адресат не назван — уточни одним вопросом, не угадывай. Правило двух
тактов: снять данные ПОЛНЫМ охватом (и дашборд, И все хосты
контура, окно 24ч) → синтезировать отчёт (коррелировать находки в «болезни», интерпретировать через
инвентарь хостов, SQL-улики довести до объекта 1С и модуля в коде, каждой рекомендации — исполнитель и
ожидаемый эффект, приоритет по эффекту, а не по severity). Пересказ сырого вывода инструмента отчётом
НЕ является; планка глубины — эталон `references/examples/zabbix-perf-report-example.md`. Методика,
формат «диагноз + план реализации», анти-паттерны — `references/zabbix-perf-analysis.md`.

## Методика расследования инцидента
От симптома к корневой причине: какие данные собрать, дерево гипотез (CPU / IO / память / блокировки / сеть),
корреляция метрик ТЖ ↔ счётчиков ОС ↔ счётчиков СУБД, подтверждение причины, валидация фикса повторным
замером. + чек-лист компетенций по 14 разделам экзамена как карта самопроверки —
`references/investigation-methodology.md`.

## Роли-режимы (под задачу — переключай фокус)
investigator (сбор данных по инциденту → гипотеза → подтверждение) · query-optimizer (план запроса →
индексы/переписывание → валидация) · lock-analyst (TLOCK/TDEADLOCK → гранулярность/порядок/retry) ·
capacity-engineer (кластер, ТНФ, отказоустойчивость, масштабирование) · loadtest-engineer (сценарии,
метрики, поиск bottleneck) · perf-baseline (APDEX, замеры, счётчики, пороги).

## Смежные скиллы
`1c-dba` — администрирование и регламентное обслуживание СУБД/кластера (бэкапы, vacuum/analyze, обновление
статистики, индексное обслуживание, настройка PostgreSQL/MS SQL под 1С). `1c-dev` — написание и ревью
производительного BSL (оптимизация кода/запросов на уровне конфигурации). `1c-analyst` — анализ задач и
архитектура. Граница: 1c-expert ставит ДИАГНОЗ по измерениям и формулирует, ЧТО лечить; реализацию фикса в
коде ведёт `1c-dev`, в инфраструктуре/СУБД — `1c-dba`.

## Безопасность
Токены/пароли СУБД и кластера — только в env / keychain / `.pgpass`, НИКОГДА в чат или репозиторий.
В выгрузках ТЖ и планах запросов могут быть персональные данные (значения параметров, представления) —
обезличивай перед передачей наружу или в AI; персональные данные в AI не передавать.

