Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
С помощью настраиваемых журналов для агента Log Analytics, выступающих в качестве источников данных, в Azure Monitor можно собирать события из текстовых файлов на компьютерах Windows и Linux. Во многих приложениях вместо стандартной службы ведения журнала, например журнала событий Windows или системного журнала, данные журналов записываются в текстовые файлы. По окончании сбора данных можно либо разобрать их на отдельные поля в ваших запросах, либо осуществить извлечение данных в отдельные поля во время сбора.
Внимание
В этой статье описывается, как собирать текстовый журнал с помощью агента Log Analytics. Если вы используете агент Azure Monitor, ознакомьтесь с разделом "Сбор текстовых журналов с помощью агента Azure Monitor".
Внимание
Устаревший агент Log Analytics будет выведен из эксплуатации с 31 августа 2024 г. Корпорация Майкрософт больше не будет предоставлять поддержку агента Log Analytics. Если вы используете агент Log Analytics для приема данных в Azure Monitor, перейдите к агенту Azure Monitor.
Собираемые файлы журнала должны соответствовать следующим условиям:
В каждой строке журнала должна содержаться одна запись либо в начале каждой строки должна быть временная метка в одном из следующих форматов:
ГГГГ-ММ-ДД ЧЧ:ММ:СС;
М/Д/ГГГГ ЧЧ:ММ:СС AM/PM (12-часовой формат);
пн дд гггг чч:мм:сс
yYMMdd HH:mm:ss
ддммгг чч:мм:сс;
ммм д чч:мм:сс;
дд/ммм/гг чч:мм:сс;
гггг-ММ-ддTчч:мм:сс.Файл журнала не должен допускать циклическое ведение записей. Это означает ротацию журналов, при которой в файл перезаписываются новые данные или выполняется переименование файла, а одно и о же имя файла повторно используется для дальнейшего ведения журнала.
В файле журнала должна использоваться кодировка ASCII или UTF-8. Другие форматы, например, UTF-16, не поддерживаются.
В Linux не поддерживается преобразование часовых поясов для меток времени в журналах.
Рекомендуется включить в файл журнала дату и время создания, чтобы предотвратить перезапись или переименование при ротации журналов.
Примечание.
Если в файле журнала есть повторяющиеся записи, Azure Monitor будет собирать их. Генерируемые результаты запроса будут несогласованны. Результаты фильтра будут отображать больше событий, чем число результатов. Необходимо проверить журнал, чтобы определить, вызваны ли такие действия приложением, в котором он создан. По возможности устраните проблему перед созданием определения сбора настраиваемых журналов.
Рабочая область Log Analytics поддерживает следующие ограничения.
- Вы можете создать только 500 пользовательских журналов.
- Таблица поддерживает до 500 столбцов.
- Имя столбца не может содержать более 500 символов.
Внимание
Для сбора пользовательских логов требуется, чтобы приложение, записывающее файл, периодически сбрасывало содержимое журнала на диск. Это обусловлено тем, что при сборе пользовательских журналов используются уведомления об изменении файловой системы для отслеживаемого файла журнала.
Определение настраиваемой таблицы журналов
Чтобы определить пользовательскую таблицу журналов, используйте следующую процедуру. В конце этой статьи содержится пошаговое руководство по добавлению настраиваемого журнала.
Открытие мастера настраиваемого журнала
Мастер настраиваемых журналов на портале Azure позволяет определить новый настраиваемый журнал для сбора данных.
В портале Azure выберите рабочие области Log Analytics> вашу рабочую область >Таблицы.
Выберите Создать, а затем Новый настраиваемый журнал (на основе MMA).
По умолчанию все изменения конфигурации автоматически отправляются во все агенты. Файл конфигурации агентов Linux отправляется в сборщик данных Fluentd.
Загрузка и анализ примера лог-файла
Сначала необходимо загрузить пример настраиваемого журнала. Мастер выполнит разбор и отобразит записи в этом файле, чтобы вы смогли их проверить. Azure Monitor будет использовать указанный вами разделитель для определения каждой записи.
Новая строка — тип разделителя по умолчанию, который используется для файлов журнала с одной записью в строке. Если строка начинается с даты и времени в одном из доступных форматов, можно указать тип разделителя Метка времени, который поддерживает записи, охватывающие несколько строк.
Если в качестве разделителя используется метка времени, свойство TimeGenerated каждой записи в Azure Monitor заполняется датой и временем, указанными для этой записи в файле журнала. Если в качестве разделителя используется новая строка, свойство TimeGenerated заполняется датой и временем сбора этой записи в Azure Monitor.
Выберите Обзор и перейдите к образцу файла. В некоторых браузерах эта кнопка может называться Выбрать файл.
Выберите Далее.
Мастер настраиваемого журнала загружает файл и выводит список идентифицируемых записей.
Измените разделитель, используемый для идентификации новой записи. Выберите разделитель, который лучше всего идентифицирует записи в файле журнала.
Выберите Далее.
Добавьте пути для сбора журналов
Необходимо определить один или несколько путей на агенте, по которым он сможет найти настраиваемый журнал. Вы можете указать конкретный путь и имя файла журнала или путь с подстановочным знаком вместо имени. Этот шаг подходит для приложений, в которых каждый день создается новый файл, или когда один файл достигает определенного размера. Вы также можете указать несколько путей для одного файла журнала.
Например, приложение может каждый день создавать файл журнала, добавляя в имя дату, например log20100316.txt. Шаблоном для такого журнала может быть log*.txt, который будет применяться к любому файлу журнала в соответствии со схемой именования приложения.
Ниже приведены примеры допустимых шаблонов для указания различных файлов журналов.
Описание | Путь |
---|---|
Все файлы агента Windows в папке C:\Logs с расширением .txt | C:\Logs\*.txt |
Все файлы агента Windows в папке C:\Logs с расширением .txt и именем, начинающимся со слова log | C:\Logs\log*.txt |
Все файлы агента Linux в папке /var/log/audits с расширением .txt | /var/log/audit/*.txt |
Все файлы агента Linux в папке /var/log/audit с расширением .txt и именем, начинающимся со слова log | /var/log/audit/log*.txt |
- Выберите Windows или Linux, чтобы указать, какой формат пути добавляется.
- Введите путь и нажмите кнопку +.
- Повторите эту процедуру для всех других путей.
Указание имени и описания журнала
Указываемое вами имя будет использоваться для типа журнала, согласно описанию. Это имя всегда будет заканчиваться на _CL, чтобы обозначить, что это настраиваемый журнал.
- Введите имя для журнала. Суффикс _CL добавляется автоматически.
- При необходимости введите описание.
- Нажмите Далее, чтобы сохранить определение настраиваемого журнала.
Проверка того, собираются ли данные настраиваемых журналов
Чтобы начальные данные из нового настраиваемого журнала появились в Azure Monitor, может потребоваться около часа. Azure Monitor начнет собирать записи из журналов, расположенных по указанному вами пути, начиная с момента определения вами настраиваемого журнала. В нем не сохраняются записи, отправленные во время создания пользовательского журнала. Он соберет уже существующие записи в найденных файлах журналов.
После того, как Azure Monitor начнет собирать записи из настраиваемого журнала, их можно будет найти, используя запрос по журналу. В качестве типа запроса следует использовать имя, присвоенное настраиваемому журналу.
Примечание.
Если в запросе отсутствует свойство RawData, может понадобиться закрыть и снова открыть ваш браузер.
Разбор записей настраиваемого журнала
Вся запись журнала будет сохранена в свойстве RawData. Скорее всего, вам потребуется разделить различные сведения в каждой записи на отдельные свойства для каждого документа. Сведения о параметрах для анализа RawData с разделением на несколько свойств см. в статье Анализ текстовых данных в Azure Monitor.
Удаление настраиваемой таблицы журналов
См. статью "Удалить таблицу".
сбор данных
Azure Monitor собирает новые записи из каждого настраиваемого журнала примерно каждые 5 минут. Агент фиксирует свою позицию в каждом файле журнала, из которого он собирает данные. Если агент на некоторое время переходит в автономный режим, Azure Monitor собирает записи с того места, где остановился, даже если эти записи были созданы, пока агент находился в автономном режиме.
Все содержимое записи журнала записывается в свойство RawData. Методы для анализа каждой импортированной записи журнала с разделением на несколько свойств см. в статье Анализ текстовых данных в Azure Monitor.
Свойства записей настраиваемого журнала
Записи настраиваемого журнала имеют тип с именем журнала, которое вы указываете, и свойства, перечисленные в таблице ниже.
Свойство | Описание |
---|---|
Время генерации | Дата и время сбора записи службой Azure Monitor. Если журнал использует разделитель на основе времени, это время берется из записи. |
Система источников | Тип агента, из которого собрана запись. OpsManager — агент Windows, прямое подключение или System Center Operations Manager Linux — все агенты Linux |
Исходные данные | Полный текст собранной записи. Скорее всего, вам потребуется проанализировать эти данные с разделением на отдельные свойства. |
Название группы управления | Имя группы управления для агентов System Center Operations Manager. Для других агентов это обозначение — AOI-<идентификатор рабочей области>. |
Пошаговое руководство по добавлению настраиваемого журнала
В этом разделе описывается процедура создания настраиваемого журнала. В каждой строке примера журнала, из которого собираются данные, содержится одна запись, начинающаяся с даты и времени, после которых идут поля для кода, состояния и сообщения, разделенные запятыми. Здесь приведены некоторые примеры записей.
2019-08-27 01:34:36 207,Success,Client 05a26a97-272a-4bc9-8f64-269d154b0e39 connected
2019-08-27 01:33:33 208,Warning,Client ec53d95c-1c88-41ae-8174-92104212de5d disconnected
2019-08-27 01:35:44 209,Success,Transaction 10d65890-b003-48f8-9cfc-9c74b51189c8 succeeded
2019-08-27 01:38:22 302,Error,Application could not connect to database
2019-08-27 01:31:34 303,Error,Application lost connection to database
Загрузка и анализ примера лог-файла
Мы предоставим один из файлов журнала и увидим события, которые он будет собирать. В этом случае достаточно использовать в качестве разделителя Новую строку. Если одна запись в журнале может занимать несколько строк, потребуется использовать в качестве разделителя метку времени.
Добавьте пути для сбора журналов
Файлы журналов будут храниться в каталоге C:\MyApp\Logs. Каждый день будет создаваться новый файл с именем, содержащим дату в формате appYYYYMMDD.log. Для этого журнала подойдёт шаблон C:\MyApp\Logs\*.log.
Указание имени и описания журнала
Мы используем имя MyApp_CL и вводим описание.
Проверка того, собираются ли данные настраиваемых журналов
Мы используем простой запрос MyApp_CL, чтобы вернуть все записи из журнала, данные которого собираются.
Альтернативы пользовательским журналам
Настраиваемые журналы являются важными в том случае, если ваши данные соответствуют перечисленным критериям, но в некоторых случаях вам необходимо применить другую стратегию:
- Данные не соответствуют требуемой структуре, например, метка времени представлена в другом формате.
- Файл журнала не соответствует требованиям, например, кодирование файла или неподдерживаемая структура папки.
- Данные требуют предварительной обработки или фильтрации перед сбором.
В тех случаях, когда настраиваемые журналы не могут собрать данные, рассмотрите следующие альтернативные стратегии.
- Используйте настраиваемый сценарий или другой метод для записи данных в События Windows или Syslog, которые собираются с помощью службы Azure Monitor.
- Отправьте данные непосредственно в Azure Monitor с помощью API сборщика данных HTTP.
Следующие шаги
- Методы для анализа каждой импортированной записи журнала с разделением на несколько свойств см. в статье об анализе текстовых данных в Azure Monitor.
- Узнайте больше о запросах журнала, которые можно применять для анализа данных, собираемых из источников данных и решений.