feat(1c): add file-based analytics stack scaffold
This commit is contained in:
@@ -0,0 +1,135 @@
|
||||
# Grafana dashboard catalog for file-based 1C
|
||||
|
||||
Ниже — целевой набор дашбордов. Это не “один giant dashboard”, а иерархия под
|
||||
разные роли.
|
||||
|
||||
## 1. 1C Executive Summary
|
||||
|
||||
Для руководства и владельца процесса.
|
||||
|
||||
Панели:
|
||||
|
||||
- Выручка сегодня / 7 дней / 30 дней
|
||||
- Просроченная дебиторка
|
||||
- Возвраты и корректировки
|
||||
- Открытые cases
|
||||
- High/Critical detections
|
||||
- Топ проблемных баз
|
||||
- Топ риск-пользователей
|
||||
- Тренд аномалий
|
||||
|
||||
Основные таблицы:
|
||||
|
||||
- `documents`
|
||||
- `detections`
|
||||
- `cases`
|
||||
|
||||
## 2. 1C Operations Health
|
||||
|
||||
Для сопровождения и инфраструктуры.
|
||||
|
||||
Панели:
|
||||
|
||||
- CPU / RAM / Disk
|
||||
- Disk latency
|
||||
- Свободное место
|
||||
- RDP sessions
|
||||
- Ошибки SMB / файлового доступа
|
||||
- Ошибки журнала регистрации
|
||||
- Длительные операции
|
||||
- Backup freshness
|
||||
|
||||
Основные таблицы:
|
||||
|
||||
- `host_events`
|
||||
- `reglog_events`
|
||||
|
||||
## 3. 1C Audit Overview
|
||||
|
||||
Для контроля, ИБ и внутреннего аудита.
|
||||
|
||||
Панели:
|
||||
|
||||
- Входы по пользователям
|
||||
- Входы вне рабочего времени
|
||||
- Изменения критичных объектов
|
||||
- Массовые перепроведения
|
||||
- Нетипичные корректировки
|
||||
- Severity split
|
||||
- Топ пользователей по risk score
|
||||
|
||||
Основные таблицы:
|
||||
|
||||
- `reglog_events`
|
||||
- `audit_events`
|
||||
- `detections`
|
||||
|
||||
## 4. 1C Detections
|
||||
|
||||
Для triage и контроля rules.
|
||||
|
||||
Панели:
|
||||
|
||||
- Detections by severity
|
||||
- Top rules
|
||||
- Cases opened by day
|
||||
- Open detections
|
||||
- Critical timeline
|
||||
- Top entities
|
||||
|
||||
Основные таблицы:
|
||||
|
||||
- `detections`
|
||||
- `cases`
|
||||
|
||||
## 5. 1C Investigation Timeline
|
||||
|
||||
Для ручного расследования.
|
||||
|
||||
Панели:
|
||||
|
||||
- Entity timeline
|
||||
- Case drilldown
|
||||
- User trace
|
||||
- Document trace
|
||||
- Related detections
|
||||
- Raw event details
|
||||
|
||||
Основные таблицы:
|
||||
|
||||
- `entity_timeline`
|
||||
- `detections`
|
||||
- `cases`
|
||||
- `reglog_events`
|
||||
- `audit_events`
|
||||
- `documents`
|
||||
|
||||
## 6. 1C Data Quality
|
||||
|
||||
Для контроля самого пайплайна.
|
||||
|
||||
Панели:
|
||||
|
||||
- Последняя выгрузка по каждой базе
|
||||
- ETL lag
|
||||
- Битые/пустые файлы
|
||||
- Rows loaded per batch
|
||||
- Ошибки ETL
|
||||
|
||||
Источники:
|
||||
|
||||
- ETL run log
|
||||
- архив landing/ETL статусов
|
||||
|
||||
## Единые variables
|
||||
|
||||
Во все dashboards:
|
||||
|
||||
- `infobase`
|
||||
- `organization`
|
||||
- `user`
|
||||
- `host`
|
||||
- `document_type`
|
||||
- `severity`
|
||||
- `case_status`
|
||||
- `time range`
|
||||
@@ -0,0 +1,16 @@
|
||||
apiVersion: 1
|
||||
|
||||
datasources:
|
||||
- name: clickhouse-1c
|
||||
uid: clickhouse-1c
|
||||
type: grafana-clickhouse-datasource
|
||||
access: proxy
|
||||
editable: true
|
||||
jsonData:
|
||||
defaultDatabase: analytics_1c
|
||||
port: 8123
|
||||
server: clickhouse
|
||||
protocol: http
|
||||
username: ${CLICKHOUSE_USER}
|
||||
secureJsonData:
|
||||
password: ${CLICKHOUSE_PASSWORD}
|
||||
@@ -0,0 +1,66 @@
|
||||
-- Executive: sales today
|
||||
SELECT
|
||||
toDate(ts) AS d,
|
||||
sum(amount) AS sales_amount
|
||||
FROM analytics_1c.documents
|
||||
WHERE doc_type = 'Реализация'
|
||||
GROUP BY d
|
||||
ORDER BY d;
|
||||
|
||||
-- Executive: overdue receivables
|
||||
SELECT
|
||||
organization,
|
||||
sum(amount) AS overdue_receivables
|
||||
FROM analytics_1c.documents
|
||||
WHERE status = 'overdue'
|
||||
GROUP BY organization
|
||||
ORDER BY overdue_receivables DESC;
|
||||
|
||||
-- Operations: host health
|
||||
SELECT
|
||||
ts,
|
||||
host,
|
||||
cpu_pct,
|
||||
ram_pct,
|
||||
disk_latency_ms,
|
||||
disk_free_gb
|
||||
FROM analytics_1c.host_events
|
||||
ORDER BY ts DESC;
|
||||
|
||||
-- Audit: after-hours activity
|
||||
SELECT
|
||||
ts,
|
||||
infobase,
|
||||
user,
|
||||
event_name,
|
||||
message
|
||||
FROM analytics_1c.reglog_events
|
||||
WHERE event_name ILIKE '%login%'
|
||||
AND toHour(ts) NOT BETWEEN 8 AND 20
|
||||
ORDER BY ts DESC;
|
||||
|
||||
-- Detections: top rules
|
||||
SELECT
|
||||
rule_title,
|
||||
severity,
|
||||
count() AS detections_total,
|
||||
sum(score) AS score_total
|
||||
FROM analytics_1c.detections
|
||||
GROUP BY rule_title, severity
|
||||
ORDER BY detections_total DESC;
|
||||
|
||||
-- Investigation: entity timeline
|
||||
SELECT
|
||||
ts,
|
||||
entity_type,
|
||||
entity_id,
|
||||
actor,
|
||||
source,
|
||||
event_type,
|
||||
severity,
|
||||
score,
|
||||
summary
|
||||
FROM analytics_1c.entity_timeline
|
||||
WHERE entity_type = {entity_type:String}
|
||||
AND entity_id = {entity_id:String}
|
||||
ORDER BY ts;
|
||||
Reference in New Issue
Block a user