Sig — когда обычный grep уже не справляется
Репозиторий давно не обновлялся
Последнее обновление было 7 месяцев назад.
Представьте: вы анализируете логи Kubernetes-кластера через stern, пытаясь найти нужную строку. Пока вводите запрос, нужные данные уже проскочили мимо. Знакомая ситуация? Именно для таких случаев создан sig — интерактивный grep, который умеет работать с потоковыми данными и перезапускать команды по требованию.
Что это за инструмент?
Sig — это TUI-утилита на Rust, которая превращает обычный поиск по тексту в интерактивный процесс. В отличие от классического grep, sig:
- Обновляет результаты поиска в реальном времени
- Позволяет перезапускать исходную команду (например, stern)
- Сохраняет историю для последующего анализа
- Работает как с потоковыми данными, так и со статическими файлами
Ключевые возможности
1. Интерактивный поиск в реальном времени
Основная фишка sig — мгновенное обновление результатов при вводе запроса. Не нужно ждать завершения команды или перенаправлять вывод — просто вводите текст и сразу видите подходящие строки.
stern --context kind-kind etcd |& sig
2. Перезапуск команд
Если вы пропустили нужные данные (а с логами Kubernetes это случается часто), просто нажмите Ctrl+R — sig перезапустит исходную команду и начнет поиск заново.
sig --cmd "stern --context kind-kind etcd"
3. Режим архивирования
Для работы со статическими данными (файлами) или анализа последних записей из потока используйте архивный режим:
cat server.log |& sig -a
# или сразу для файла
sig -a --cmd "cat server.log"
Почему Rust?
Sig написан на Rust, что обеспечивает:
- Высокую производительность даже с большими потоками данных
- Минимальное потребление ресурсов
- Надежность и безопасность
- Кросс-платформенную поддержку
Практическое применение
- Анализ логов Kubernetes (в паре с stern)
- Мониторинг системных журналов (journalctl, syslog)
- Поиск в больших текстовых файлах (конфиги, дампы БД)
- Отладка CI/CD пайплайнов (анализ вывода сборки)
Как установить
Для пользователей Homebrew:
brew install ynqa/tap/sigrs
Или через Cargo:
cargo install sigrs
Вывод: кому стоит попробовать
Sig особенно полезен:
- DevOps-инженерам, работающим с Kubernetes
- Системным администраторам, анализирующим логи
- Разработчикам, отлаживающим сложные системы
Если вы часто работаете с потоковыми данными и устали от ограничений обычного grep — sig станет вашим новым любимым инструментом.
