Filesystem monitoring: различия между версиями

Материал из Документация Ключ-АСТРОМ
Нет описания правки
[wiki-cd:ruscomtech-extensions:b0985a6744c086353b26ac217dfa652296b8c814]
 
Строка 1: Строка 1:
'''''[[Расширения]] / [[Расширения#.D0.A0.D0.B0.D1.81.D1.88.D0.B8.D1.80.D0.B5.D0.BD.D0.B8.D1.8F%202.0|Расширения 2.0]] / Filesystem monitoring'''''
'''''[[Расширения]] / Filesystem monitoring'''''


Следите за своими файлами и папками. Автоматическое развертывание на сотнях хостов за считанные минуты.
Расширение '''Filesystem monitoring''' версии <code>1.5.7</code> контролирует файлы, каталоги и точки монтирования на хостах Windows и Linux. Идентификатор: <code>ru.ruscomtech.filesystem</code>.


== Обзор ==
== Возможности ==
С расширением файловой системы V2 отслеживайте свои файлы в установках ЕдиногоАгента для Windows и Linux.


Это расширение предлагает больше функциональных возможностей, чем предыдущая версия, и использует новую структуру расширений (EF2.0).
* Подсчёт файлов и каталогов по пути или glob-шаблону.
* Сбор размера файлов и возраста последнего изменения.
* Подсчёт файлов старше или новее заданного возраста.
* Проверка наличия точки монтирования в Unix.
* Работа с локальной файловой системой и файловыми ресурсами Azure File Share.
* Запуск проверок по расписанию, в том числе ежемесячному и ежегодному.
* Выполнение проверок от имени другого пользователя и использование хранилища учётных данных.


Файл расширения больше не нужно распаковывать на отслеживаемых хостах. Настройка и развертывание выполняются через пользовательский интерфейс Ключ-АСТРОМ.
== Требования и режим работы ==


Нацеливание может быть выполнено по хосту, группе хостов, зоне управления или среде. Теги можно применять для разделения ваших конфигураций (максимум 100 конфигураций).
* Ключ-АСТРОМ <code>1.318.0+</code> и контроллер выполнения расширений (EEC) <code>1.310.0+</code>.
* ЕдиныйАгент с включённым EEC на каждом контролируемом хосте Windows или Linux.
* Среда Python не ниже <code>3.9</code> в составе EEC. Устанавливать Python и зависимости вручную в системную среду не требуется.
* Учётная запись выполнения должна иметь доступ на чтение к проверяемым путям. Для сетевого ресурса нужны также сетевой доступ и права на ресурс.


Для каждой проверки пути Ключ-АСТРОМ создаст объект и свяжет его с соответствующим хостом. Таким образом, фильтрация расширений и теги возможны для просмотра ваших данных. То же самое можно сделать с оповещениями.
Расширение поддерживает только '''локальное выполнение''' через ЕдиныйАгент. Удалённый запуск на АктивномШлюзе не предусмотрен. Локальный режим не запрещает проверку сетевого ресурса, если он доступен учётной записи выполнения на этом хосте.


Проверки могут быть отключены для определенных дней и в определенное время.
Поддерживаются '''Azure File Share''', а не Azure Blob Storage. Для Azure необходим доступ от хоста выполнения к файловому ресурсу; рекурсивный поиск в Azure не поддерживается.


Метрики :
== Установка ==


* Количество файлов: количество файлов, соответствующих шаблону.
# Откройте раздел '''Расширения''' в Ключ-АСТРОМ.
* Счетчик возраста файла: количество файлов, соответствующих шаблону и возрасту.
# Загрузите подписанный ZIP-пакет <code>ru.ruscomtech.filesystem</code> и активируйте нужную версию.
* Возраст файла: возраст определенного файла (самый старый или самый новый при возврате более 1 файла).
# Добавьте конфигурацию мониторинга и выберите локальное выполнение на нужных хостах.
* Размер файла: Размер файлов в байтах
# Добавьте проверки в список '''Filesystem check'''. Одна конфигурация содержит от 1 до 100 проверок.
* Файл смонтирован: файл смонтирован в Unix NFS.
# Заполните параметры, сохраните и включите конфигурацию.


== Случаи Использования ==
Распаковывать пакет вручную на контролируемых хостах не нужно.
Примеры пути:


* Подсчитайте количество файлов журнала внутри /var/log/myapp Выберите тип проверки = count Путь = /var/log/myapp/*.log
== Конфигурация проверок ==
* Подсчитайте количество файлов журнала внутри c:\temp Выберите тип проверки = count Путь = c:\temp*.log
* Подсчитайте количество файлов журналов внутри /var/log/myapp и любых подкаталогов Выберите тип проверки = count Путь = /var/log/myapp/**/*.log
* Возвращает общий размер всех файлов файлов внутри /var/log/myapp Выберите тип проверки = размер Путь = /var/log/myapp/*
* Возвращает возраст самого старого файла в /tmp/test/. Выберите тип проверки = возраст модификации. Отмените выбор пользователя. Самый новый файл. Путь = /tmp/test/*.
* Вернуть количество файлов журналов старше 1 часа в /tmp/test Выберите тип проверки = счетчик возраста модификации Установите для оператора сравнения возраста значение Older than Установите пороговое значение 60 Path = /tmp/test/*.log
* Проверьте, смонтирован ли /data/mount-data Выберите тип проверки = точка монтирования Путь = /data/mount-data
* Убедитесь, что создан журнал за сегодня: /var/mylog20222211.log Выберите тип проверки = count Путь = /var/mylogГГГГММДД.log Принимает ДДММГГГГ, ДД-ММ-ГГГГ, ДД_ММ_ГГГГ, ГГГГММДД. ГГГГ-ММ-ДД, ГГГГ_ММ_ДД. Дата будет локальной датой, когда работает OneAgent/расширение.


Расписания: если расписание не выбрано, проверка будет выполняться круглосуточно и без выходных.
=== Основные параметры ===


Если проверку не следует проводить в воскресенье, выберите расписание и снимите флажок «Воскресенье».
* '''Check Type''' (<code>check_type</code>) — тип проверки. По умолчанию <code>count</code>:
** <code>count</code> — количество объектов по заданному пути или шаблону;
** <code>size</code> — суммарный размер найденных файлов;
** <code>modification_time</code> — возраст самого нового либо самого старого файла;
** <code>age_count</code> — количество файлов старше либо новее порога;
** <code>mount</code> — состояние точки монтирования: <code>1</code> — смонтирована, <code>0</code> — нет.
* '''Path''' (<code>path</code>) — абсолютный путь к файлу, каталогу или glob-шаблон. Для <code>mount</code> укажите конкретную точку монтирования.
* '''File system''' (<code>file_system_type</code>) — <code>local</code> для файловой системы ОС либо <code>azure</code> для Azure File Share. По умолчанию <code>local</code>.
* '''Frequency''' (<code>frequency</code>) — период проверки в минутах, от <code>1</code> до <code>1440</code>; по умолчанию <code>1</code>.
* '''Enabled''' (<code>enabled</code>) — включает отдельную проверку; по умолчанию включено.


Временные окна можно добавить, введя время начала (используйте точку с запятой для нескольких окон).
=== Параметры отдельных типов проверок ===


Для каждого времени будет добавлено поле длительности расписания, чтобы определить конец. См. пример для работы только с 9:00 в течение 8 часов.
* '''Count directories''' (<code>count_dirs</code>) — учитывать каталоги вместе с файлами при локальном подсчёте. По умолчанию включено; отключите для подсчёта только файлов.
* '''Use newest file''' (<code>modification_newest</code>) — для <code>modification_time</code> возвращать возраст самого нового файла. По умолчанию включено; отключите для самого старого.
* '''Age comparison operator''' (<code>modification_count_condition</code>) — для <code>age_count</code>: <code>greater</code> (Older than) либо <code>less</code> (Newer than).
* '''File age''' (<code>modification_count_threshold</code>) — порог возраста в минутах для <code>age_count</code>.
* '''Mount type''' (<code>file_system_mount_type</code>) — <code>unix</code> для проверки точки монтирования. Этот тип проверки предназначен для Unix, а не для дисков Windows или Azure API.
* '''Azure account''' и '''Azure key''' — учётная запись хранилища Azure и её ключ для доступа к File Share. Ключ задавайте в секретном поле конфигурации, не сохраняйте его в Git или примерах.


Типы файловых систем Расширение поддерживает локальные файловые системы, однако общие сетевые ресурсы также поддерживаются, если учетная запись dtuser может видеть файлы.
=== Пути и шаблоны ===


Это справедливо для любого файла. Файл должен быть как минимум доступен для чтения пользователю Ключ-АСТРОМ, в противном случае он будет невидим для расширения.
Для локальных файлов доступны обычные glob-шаблоны, включая рекурсивный поиск через <code>**</code>.


Также поддерживаются файловые ресурсы Azure. При выборе появятся 2 новых поля. Учетная запись Azure и ключ.
* <code>/var/log/myapp/*.log</code> — журналы непосредственно в каталоге; <code>/var/log/myapp/**/*.log</code> — также во вложенных каталогах.
* <code>C:\temp\*.log</code> — журналы в каталоге Windows.
* Для поиска журналов старше часа выберите <code>age_count</code>, путь <code>/var/log/myapp/*.log</code>, оператор Older than и порог <code>60</code>.


Убедитесь, что есть подключение к Azure из ЕдиногоАгента.
В путях поддерживаются подстановки даты: <code>DDMMYYYY</code>, <code>DD-MM-YYYY</code>, <code>DD_MM_YYYY</code>, <code>YYYYMMDD</code>, <code>YYYY-MM-DD</code>, <code>YYYY_MM_DD</code>, <code>DDMmmYYYY</code>, <code>DDMMMYYYY</code> и <code>DDmmmYYYY</code>. Например, <code>/var/log/myapp/app-YYYY-MM-DD.log</code> обозначает журнал за текущую дату по локальному времени хоста выполнения.


== Информация О Совместимости ==
Для смещения даты добавьте суффикс <code>|-3d</code>: <code>/var/log/myapp/app-YYYY-MM-DD.log|-3d</code> проверит файл за три дня до текущей даты.
Это расширение ЕдиногоАгента, совместимое с Windows и Linux.


Кластер версии 1.254 и ЕдиныйАгент минимум 1.249.
=== Выполнение от другого пользователя ===


Хранилище BLOB-объектов Azure поддерживается
По умолчанию используются права служебной учётной записи выполнения расширения. Если их недостаточно, включите '''Run check as another user''' (<code>assumeUser</code>).
 
* Для учётных данных из хранилища включите '''Use credential vault''' и выберите запись типа Username and password.
* При ручном вводе на Windows укажите '''Username''' в формате <code>DOMAIN\Username</code> и '''Password'''; поле '''SUDO Command''' оставьте пустым.
* На Linux доступны <code>sudo</code> и <code>sesu</code>. Поле '''Username''' задаёт целевого пользователя; если оно пустое, команда вызывается без явного имени пользователя.
 
Права на переключение пользователя настраиваются администратором ОС отдельно. Расширение не выдаёт эти права и не меняет правила <code>sudo</code> автоматически.
 
=== Расписание ===
 
Без расписания проверка выполняется круглосуточно с периодом '''Frequency'''.
 
Для ограничения времени работы включите '''Schedule enabled''' (<code>schedule_enabled</code>):
 
* '''Days enabled''' — разрешённые дни недели.
* '''Schedule time''' (<code>schedule_time</code>) — время начала окон в формате <code>HH:MM</code>; несколько значений разделяются точкой с запятой, например <code>09:00;18:00</code>. Пустое поле означает отсутствие ограничения по времени суток.
* '''Schedule duration''' (<code>timeout</code>) — длительность каждого окна в минутах. Это '''не таймаут выполнения проверки'''. Например, начало <code>09:00</code> и длительность <code>480</code> задают восьмичасовое окно.
 
'''Advanced Scheduler''' (<code>advanced_schedule</code>) позволяет выбрать ежемесячное или ежегодное повторение:
 
* Ежемесячно: перечислите числа месяца в '''Day of month''' либо выберите день недели и его порядковое вхождение в месяц — первое, второе, третье, четвёртое или последнее.
* Ежегодно: перечислите даты в формате <code>MM-DD</code> через запятую.
 
Дни и время рассчитываются по локальному времени хоста выполнения. Расписание ограничивает доступные окна, а '''Frequency''' задаёт период проверок внутри них.
 
=== Дополнительные сведения ===
 
Включите '''Specify additional metadata''' (<code>extra_dimensions</code>), чтобы добавить до трёх измерений: <code>info1</code>, <code>info2</code> и <code>info3</code>. Их можно использовать для команды сопровождения, назначения проверки или номера инструкции. Не помещайте в измерения пароли и другие секреты.
 
== Метрики и проверка работы ==
 
* <code>filesystem.file_count</code> — количество найденных объектов.
* <code>filesystem.file_size</code> — размер файлов в байтах.
* <code>filesystem.file_age</code> — возраст файла в секундах.
* <code>filesystem.file_age_count</code> — количество файлов, соответствующих условию по возрасту.
* <code>filesystem.file_mount</code> — состояние точки монтирования.
 
Для контролируемых путей создаются сущности <code>filesystem:path</code>. В пакете доступны обзорные панели файлового мониторинга.
 
После сохранения конфигурации дождитесь проверки внутри разрешённого окна расписания. Убедитесь, что конфигурация не сообщает об ошибках, а метрика выбранного типа поступает с нужным измерением <code>path</code>.
 
Если данных нет, проверьте выбранные хосты, состояние EEC, права служебной учётной записи, путь и glob-шаблон, признак '''Enabled''' и расписание. Для Azure дополнительно проверьте доступ к File Share и учётные данные. Отсутствие файлов, запрет доступа и пропуск по расписанию — разные ситуации; уточняйте причину по статусу и журналу расширения.


== История версий ==
== История версий ==


{| class="wikitable"
=== Версия 1.5.7 ===
! Версия
 
! Изменения
Версия расширения для Ключ-АСТРОМ <code>1.318.0+</code>; требуется EEC <code>1.310.0+</code>.
|-
 
|1.3.3
* Доступны локальные проверки файлов, каталогов и точек монтирования, а также файловых ресурсов Azure File Share.
|
* Поддерживаются расширенные ежемесячные и ежегодные расписания, хранилище учётных данных и дополнительные измерения <code>info1</code>, <code>info2</code>, <code>info3</code>.
* В пакет включены обзорные панели файлового мониторинга.
 
=== Версия 1.3.3 ===
 
* В параметры запуска проверок от имени другого пользователя на узлах Linux добавлена поддержка <code>sesu</code>.
* В параметры запуска проверок от имени другого пользователя на узлах Linux добавлена поддержка <code>sesu</code>.
* Исправлен запуск через <code>sudo</code>: если имя пользователя не указано, команда корректно выполняется от имени пользователя <code>dtuser</code>.
* Исправлен запуск через <code>sudo</code>: если имя пользователя не указано, команда корректно вызывается служебным пользователем <code>dtuser</code> без явного имени целевого пользователя.
|-
 
|1.3.0
=== Версия 1.3.0 ===
|Начало поддержки расширения в Ключ-АСТРОМ <code>1.289.0+</code>.
 
|}
Начало поддержки расширения в Ключ-АСТРОМ <code>1.289.0+</code>.

Текущая версия от 23:24, 22 октября 2026

Расширения / Filesystem monitoring

Расширение Filesystem monitoring версии 1.5.7 контролирует файлы, каталоги и точки монтирования на хостах Windows и Linux. Идентификатор: ru.ruscomtech.filesystem.

Возможности

  • Подсчёт файлов и каталогов по пути или glob-шаблону.
  • Сбор размера файлов и возраста последнего изменения.
  • Подсчёт файлов старше или новее заданного возраста.
  • Проверка наличия точки монтирования в Unix.
  • Работа с локальной файловой системой и файловыми ресурсами Azure File Share.
  • Запуск проверок по расписанию, в том числе ежемесячному и ежегодному.
  • Выполнение проверок от имени другого пользователя и использование хранилища учётных данных.

Требования и режим работы

  • Ключ-АСТРОМ 1.318.0+ и контроллер выполнения расширений (EEC) 1.310.0+.
  • ЕдиныйАгент с включённым EEC на каждом контролируемом хосте Windows или Linux.
  • Среда Python не ниже 3.9 в составе EEC. Устанавливать Python и зависимости вручную в системную среду не требуется.
  • Учётная запись выполнения должна иметь доступ на чтение к проверяемым путям. Для сетевого ресурса нужны также сетевой доступ и права на ресурс.

Расширение поддерживает только локальное выполнение через ЕдиныйАгент. Удалённый запуск на АктивномШлюзе не предусмотрен. Локальный режим не запрещает проверку сетевого ресурса, если он доступен учётной записи выполнения на этом хосте.

Поддерживаются Azure File Share, а не Azure Blob Storage. Для Azure необходим доступ от хоста выполнения к файловому ресурсу; рекурсивный поиск в Azure не поддерживается.

Установка

  1. Откройте раздел Расширения в Ключ-АСТРОМ.
  2. Загрузите подписанный ZIP-пакет ru.ruscomtech.filesystem и активируйте нужную версию.
  3. Добавьте конфигурацию мониторинга и выберите локальное выполнение на нужных хостах.
  4. Добавьте проверки в список Filesystem check. Одна конфигурация содержит от 1 до 100 проверок.
  5. Заполните параметры, сохраните и включите конфигурацию.

Распаковывать пакет вручную на контролируемых хостах не нужно.

Конфигурация проверок

Основные параметры

  • Check Type (check_type) — тип проверки. По умолчанию count:
    • count — количество объектов по заданному пути или шаблону;
    • size — суммарный размер найденных файлов;
    • modification_time — возраст самого нового либо самого старого файла;
    • age_count — количество файлов старше либо новее порога;
    • mount — состояние точки монтирования: 1 — смонтирована, 0 — нет.
  • Path (path) — абсолютный путь к файлу, каталогу или glob-шаблон. Для mount укажите конкретную точку монтирования.
  • File system (file_system_type) — local для файловой системы ОС либо azure для Azure File Share. По умолчанию local.
  • Frequency (frequency) — период проверки в минутах, от 1 до 1440; по умолчанию 1.
  • Enabled (enabled) — включает отдельную проверку; по умолчанию включено.

Параметры отдельных типов проверок

  • Count directories (count_dirs) — учитывать каталоги вместе с файлами при локальном подсчёте. По умолчанию включено; отключите для подсчёта только файлов.
  • Use newest file (modification_newest) — для modification_time возвращать возраст самого нового файла. По умолчанию включено; отключите для самого старого.
  • Age comparison operator (modification_count_condition) — для age_count: greater (Older than) либо less (Newer than).
  • File age (modification_count_threshold) — порог возраста в минутах для age_count.
  • Mount type (file_system_mount_type) — unix для проверки точки монтирования. Этот тип проверки предназначен для Unix, а не для дисков Windows или Azure API.
  • Azure account и Azure key — учётная запись хранилища Azure и её ключ для доступа к File Share. Ключ задавайте в секретном поле конфигурации, не сохраняйте его в Git или примерах.

Пути и шаблоны

Для локальных файлов доступны обычные glob-шаблоны, включая рекурсивный поиск через **.

  • /var/log/myapp/*.log — журналы непосредственно в каталоге; /var/log/myapp/**/*.log — также во вложенных каталогах.
  • C:\temp\*.log — журналы в каталоге Windows.
  • Для поиска журналов старше часа выберите age_count, путь /var/log/myapp/*.log, оператор Older than и порог 60.

В путях поддерживаются подстановки даты: DDMMYYYY, DD-MM-YYYY, DD_MM_YYYY, YYYYMMDD, YYYY-MM-DD, YYYY_MM_DD, DDMmmYYYY, DDMMMYYYY и DDmmmYYYY. Например, /var/log/myapp/app-YYYY-MM-DD.log обозначает журнал за текущую дату по локальному времени хоста выполнения.

Для смещения даты добавьте суффикс |-3d: /var/log/myapp/app-YYYY-MM-DD.log|-3d проверит файл за три дня до текущей даты.

Выполнение от другого пользователя

По умолчанию используются права служебной учётной записи выполнения расширения. Если их недостаточно, включите Run check as another user (assumeUser).

  • Для учётных данных из хранилища включите Use credential vault и выберите запись типа Username and password.
  • При ручном вводе на Windows укажите Username в формате DOMAIN\Username и Password; поле SUDO Command оставьте пустым.
  • На Linux доступны sudo и sesu. Поле Username задаёт целевого пользователя; если оно пустое, команда вызывается без явного имени пользователя.

Права на переключение пользователя настраиваются администратором ОС отдельно. Расширение не выдаёт эти права и не меняет правила sudo автоматически.

Расписание

Без расписания проверка выполняется круглосуточно с периодом Frequency.

Для ограничения времени работы включите Schedule enabled (schedule_enabled):

  • Days enabled — разрешённые дни недели.
  • Schedule time (schedule_time) — время начала окон в формате HH:MM; несколько значений разделяются точкой с запятой, например 09:00;18:00. Пустое поле означает отсутствие ограничения по времени суток.
  • Schedule duration (timeout) — длительность каждого окна в минутах. Это не таймаут выполнения проверки. Например, начало 09:00 и длительность 480 задают восьмичасовое окно.

Advanced Scheduler (advanced_schedule) позволяет выбрать ежемесячное или ежегодное повторение:

  • Ежемесячно: перечислите числа месяца в Day of month либо выберите день недели и его порядковое вхождение в месяц — первое, второе, третье, четвёртое или последнее.
  • Ежегодно: перечислите даты в формате MM-DD через запятую.

Дни и время рассчитываются по локальному времени хоста выполнения. Расписание ограничивает доступные окна, а Frequency задаёт период проверок внутри них.

Дополнительные сведения

Включите Specify additional metadata (extra_dimensions), чтобы добавить до трёх измерений: info1, info2 и info3. Их можно использовать для команды сопровождения, назначения проверки или номера инструкции. Не помещайте в измерения пароли и другие секреты.

Метрики и проверка работы

  • filesystem.file_count — количество найденных объектов.
  • filesystem.file_size — размер файлов в байтах.
  • filesystem.file_age — возраст файла в секундах.
  • filesystem.file_age_count — количество файлов, соответствующих условию по возрасту.
  • filesystem.file_mount — состояние точки монтирования.

Для контролируемых путей создаются сущности filesystem:path. В пакете доступны обзорные панели файлового мониторинга.

После сохранения конфигурации дождитесь проверки внутри разрешённого окна расписания. Убедитесь, что конфигурация не сообщает об ошибках, а метрика выбранного типа поступает с нужным измерением path.

Если данных нет, проверьте выбранные хосты, состояние EEC, права служебной учётной записи, путь и glob-шаблон, признак Enabled и расписание. Для Azure дополнительно проверьте доступ к File Share и учётные данные. Отсутствие файлов, запрет доступа и пропуск по расписанию — разные ситуации; уточняйте причину по статусу и журналу расширения.

История версий

Версия 1.5.7

Версия расширения для Ключ-АСТРОМ 1.318.0+; требуется EEC 1.310.0+.

  • Доступны локальные проверки файлов, каталогов и точек монтирования, а также файловых ресурсов Azure File Share.
  • Поддерживаются расширенные ежемесячные и ежегодные расписания, хранилище учётных данных и дополнительные измерения info1, info2, info3.
  • В пакет включены обзорные панели файлового мониторинга.

Версия 1.3.3

  • В параметры запуска проверок от имени другого пользователя на узлах Linux добавлена поддержка sesu.
  • Исправлен запуск через sudo: если имя пользователя не указано, команда корректно вызывается служебным пользователем dtuser без явного имени целевого пользователя.

Версия 1.3.0

Начало поддержки расширения в Ключ-АСТРОМ 1.289.0+.