Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tview_csv

Утилита командной строки для обработки лог-файлов 1С:Предприятие, агрегации данных и экспорта результатов в форматах CSV или JSON.

Возможности

  • 📊 Группировка данных по заданным полям
  • 📈 Агрегация метрик (count, sum, max, min, avg)
  • 🔍 Фильтрация записей по условиям
  • 📤 Экспорт в CSV или JSON

Установка

go build

Использование

Синтаксис

tview_csv --group <поля> --aggregate <поле> --format <формат> [--filter <условие>] <файлы.log>

Параметры

Параметр Короткий По умолчанию Описание
--group -g event Поля для группировки (через запятую)
--aggregate -a duration Поле для агрегации
--format -o csv Формат вывода: csv или json
--filter -f Фильтр по ключу и значению (можно указывать несколько)
--profile -p false Включить pprof профилирование
files Файлы .log (обязательно, поддерживает glob-маски)

Примеры

Базовое использование

# Группировка по event, агрегация duration
tview_csv *.log

Фильтрация

# Фильтр по одному полю
tview_csv -f event=EXCP *.log

# Несколько фильтров (логика AND)
tview_csv -f event=CALL -f Usr="Администратор" *.log

# Значение с пробелами
tview_csv -f Usr="User Name" *.log

Группировка и формат вывода

# Группировка по нескольким полям, вывод JSON
tview_csv -g event,Usr -a duration -o json *.log

Алгоритм работы

  1. Инициализация — парсинг аргументов, поиск файлов, парсинг фильтров
  2. Обработка файлов — для каждого файла создаётся горутина:
    • Чтение построчно (поддержка multiline-строк)
    • Парсинг строки лога
    • Применение фильтра
    • Группировка и агрегация
  3. Сбор результатов — объединение данных из всех файлов
  4. Сортировка — по убыванию суммы агрегируемого поля
  5. Экспорт — вывод в stdout в формате CSV или JSON

Тестирование

go test -v
go test -coverprofile=cover.out
go tool cover -html=cover.out -o cover.html

Лицензия

GNU General Public License v3 — см. LICENSE

About

Программа для анализа техжурнала 1С

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages