Ночью что-то произошло: где на самом деле лежит запись

Оповещение говорит, что что-то произошло. Журнал говорит почему. Загвоздка в том, что нужнее всего оказывается запись именно той минуты, когда машина умерла, а при установке по умолчанию именно она чаще всего отсутствует.

AtlasPVE ·

Эта статья отвечает на

  • proxmox логи после сбоя
  • proxmox где лежат логи
  • proxmox журнал задач где
  • proxmox syslog расположение
  • proxmox logs after crash

Машина перезагрузилась ночью, и никто её об этом не просил. Всё снова работает, ничего явно не сломано, и единственная честная фраза звучит так: что-то произошло.

У наблюдения есть три записи, и они отвечают на три разных вопроса. Оповещение говорит, что что-то произошло. Метрика говорит, какую форму это имело. Журнал говорит почему. Этот текст о третьей записи и о неудобном обстоятельстве: журнал, покрывающий интересную минуту, чаще всего оказывается утраченным.

Первый вопрос мельче, чем кажется

Прежде чем строить теории про железо, задайте самый дешёвый вопрос из возможных: её выключили, или она умерла?

Ответ помещается в одну строку. Аккуратное выключение оставляет подпись в конце журнала предыдущей загрузки: служба журналирования отмечает, что её попросили остановиться, а затем отмечает, что она остановилась. Машина, потерявшая питание, не оставляет никакого окончания. Запись просто обрывается посреди обычной работы.

Одно это различие делит расследование пополам. Аккуратное окончание означает, что кто-то принял решение перезагрузить, значит ищите заказчика: обновление, сторожевой таймер, запланированное задание, человека. Отсутствие окончания означает, что машину прервали, значит смотрите на питание, нагрев, память и лежащее ниже хранилище.

Но только если предыдущая загрузка ещё существует

Вот ловушка. Журнал хранит историю постоянно лишь тогда, когда на диске существует определённый каталог. Если его нет, журнал живёт в оперативной памяти, и каждая перезагрузка стирает ровно то доказательство, за которым вы пришли. Ни ошибки, ни предупреждения: вы просите предыдущую загрузку и слышите, что её нет.

Это стоит проверить спокойным днём, а не тем утром, когда понадобилось. Речь про один каталог, и именно он отделяет наличие записи от уверенности в её наличии.

Форма у этой ловушки та же, что и у другой, которую стоит назвать дважды: регистратор разделяет судьбу того, что регистрирует. График, который вам нужнее всего, перестал писаться ровно в тот момент, когда стало интересно; а журнал, который вам нужнее всего, принадлежит загрузке, которой больше нет.

Файла, который советует прочитать половина интернета, может не быть

Измерено на актуальной установке, Proxmox VE 9.2.6 на Debian 13.6: классическая служба системного журналирования не установлена, а файла /var/log/syslog не существует.

Это весит больше, чем звучит. Значительная часть советов по диагностике, написанных за последние пятнадцать лет, начинается со слов "посмотрите /var/log/syslog". На актуальной машине эта команда не вернёт ничего, и человек под давлением прочитает результат как *логов у меня нет*, а не как *я смотрю не туда*. Системной записью сегодня является журнал, и его не открывают в редакторе, к нему обращаются с запросом.

Proxmox ведёт вторую запись, и она отвечает на другой вопрос

Отдельно от системного журнала Proxmox VE ведёт собственный журнал задач. Любая операция, запущенная через веб-интерфейс или API, становится задачей с идентификатором, временем начала, временем окончания и итоговым состоянием, а рядом с файлами отдельных задач лежит файл указателя. На одной лабораторной машине этот указатель содержал 283 строки, а за ним стояло около 960 файлов задач.

Две записи хороши в разном. Журнал хорош в вопросе "что делала система". Журнал задач хорош в вопросе "кто чего попросил и довёл ли до конца". Когда у виртуальной машины есть снимок, который никто не помнит, чтобы делал, или изменение появилось без автора, журнал задач обычно отвечает быстрее журнала системы, потому что он представляет собой список намерений, а не поток событий.

Определите потолок до того, как история понадобится

По умолчанию предел журнала выражается долей файловой системы, а не длительностью. На измеренной выше машине явный предел не был задан, и журнал вырос примерно до 276 МБ.

Два числа стоит знать заранее: сколько места журналу позволено занять и насколько далеко назад это дотягивается на этой машине. Порядок важен, и он тот же, что и с метриками. Решите, насколько далеко назад нужно видеть, и уже под это выбирайте настройку. Узнать ответ посреди инцидента означает узнать, что ответ звучит как "недостаточно далеко".

Что Atlas делает, а чего не делает

Atlas не заменяет журнал и не пытается читать ваши записи за вас. Поиска по журналам здесь нет, и утверждать обратное значило бы устроить вам плохое утро.

Atlas несёт первую половину: ежедневная сводка сообщает о незапланированной перезагрузке как о факте, с машиной и временем, чтобы вопрос вообще был задан. Чтение остаётся за вами, а ответ по-прежнему живёт в журнале.

В этом весь смысл. Худшая версия минувшей ночи не та перезагрузка, которую вы расследовали с открытым не тем файлом. Худшая версия это перезагрузка, которую никто не заметил, потому что запись, которую никто никогда не открывает, не отвечает ни на что.

Источники

Собственная документация Proxmox. На английском, и последнее слово в этом вопросе за ней.

Похожие статьи

Как это выглядит внутри Atlas?

Перейти на страницу продукта