Логи: теперь мы автоматически создаём логи для каждой машины
В логе машины записана каждая команда: кто её запустил, когда и чем она закончилась. Записи хранятся год. К команде можно оставить заметку, а пароль, случайно попавший в команду, стереть.
Зачем
Терминал показывает, что ты делаешь сейчас. А на сервере часто важно другое: кто перезапустил сервис вчера вечером, что выполнялось перед тем, как всё упало, какой командой в прошлом месяце чинили то же самое. Раньше это приходилось собирать по history и журналам на самом сервере. Теперь tTerm записывает каждую команду сам, и изменить эту запись никто не может.
Где он
Лог лежит среди заметок проекта, в папке «Логи» с пометкой «ведёт tTerm», у каждой машины свой. Рядом с машиной видно, сколько команд на ней выполнили сегодня. Лог показывает по одному дню, а новые строки появляются в нём сами, как только команда завершилась.
Что в строке
Каждая команда занимает одну строку: время, кто её запустил, сама команда, сколько она шла, папка, ветка git и терминал. У команды с ошибкой стоят крестик и код возврата. Щелчок открывает строку целиком: команду, её вывод и заметки. Между командами лог отмечает, когда открывали и закрывали терминалы. Если терминал завершился сам, лог пишет и почему.
Заметки к командам
Под любой командой можно оставить заметку: зачем её запустили, что из этого вышло, куда переехал конфиг. Заметку можно написать в логе или прямо у блока в терминале, видна она в обоих местах. Заметки не правят и не удаляют, на них отвечают. Поэтому лог остаётся честной историей.
Найти за год
Поиск в логе ищет по всему году, по командам и по заметкам. Фильтры оставляют только команды с ошибкой, с заметками, одного человека или одного терминала. А поиск по ⌘K теперь находит и строки логов всех твоих машин.
Если в команду попал пароль
Бывает: export с токеном или пароль прямо в строке. Владелец проекта стирает его через «Стереть…». Слова пропадают из лога, из ленты терминала, из поиска и из истории строки ввода. На их месте остаётся, кто стёр, когда и почему. В ночных копиях базы они продержатся ещё не больше двух недель.
Сколько хранится
Строки лога хранятся год, вывод команд хранится 30 дней. Лог принадлежит машине: если перенести её в другой проект, весь лог переедет вместе с ней.
Когда терминал завершается сам
Терминал живёт в tTerm Web, а не во вкладке браузера, но иногда завершается и без тебя, например когда выходит новая версия tTerm Web. Теперь вкладка говорит, почему это случилось, а всё выполненное остаётся в логе. Кнопка «Открыть новый терминал» откроет его в той же папке.
В tTerm для Mac лог появится со следующим обновлением. Подробно о логе написано в документации, на странице «Лог машины».