Введение в контроль SNMP

С любым количеством столбцов даты после first_login, мы можем сделать следующее.

  1. gather столбцы даты в один столбец, так что мы можем на самом деле работать с удобным. Это аккуратный формат, в котором каждая строка представляет собой комбинацию дня и дня пользователя.
  2. Преобразуйте даты в Date объекты и определите дни между наблюдением и first_log. Мы используем Interval, чтобы сделать это, чтобы обеспечить разумное поведение вокруг неровностей временной шкалы.
  3. filter, чтобы сохранить только наблюдения, которые произошли в желаемом диапазоне недель
  4. summarise, чтобы рассчитать общее количество входов в систему за этот период, и right_join значения обратно на оригинал. Обратите внимание, что без дополнительных образцов данных трудно быть более наглядным, поскольку здесь суммируется только одна ячейка, и поэтому только пользователь с id = 1 фактически имеет любые значения для суммирования.
library(tidyverse)
library(lubridate)

tbl <- tibble(id = c(1:4), first_log = c("18-12-01", "18-12-02", "18-12-02", "18-12-05"), X18_12_01 = c(NA, 1, 1, 2), X18_12_02 = c(5, 2, 1, 1))

tbl %>%
  gather(day, num_logins, -id, -first_log) %>%
  mutate(
    first_log = ymd(first_log),
    day = day %>% str_remove("^X") %>% ymd(),
    days_since_event = as.period(first_log %--% day, "day"),
  ) %>%
  filter(days_since_event > days(0) & days_since_event <= days(7)) %>%
  group_by(id) %>%
  summarise(total_logins = sum(num_logins, na.rm = TRUE)) %>%
  right_join(tbl, by = "id")
#> # A tibble: 4 x 5
#>      id total_logins first_log X18_12_01 X18_12_02
#>                          
#> 1     1            5 18-12-01         NA         5
#> 2     2           NA 18-12-02          1         2
#> 3     3           NA 18-12-02          1         1
#> 4     4           NA 18-12-05          2         1

Создано в 2019-03-04 при помощи пакета представляет (v0.2.1) sup>

9
задан David Berger 24 April 2009 в 20:04
поделиться

6 ответов

Краткое описание типичного агента SNMP:

  1. Настройте агента. Обычно это влечет за собой указание на какой сервер отправлять оповещения.

  2. Запустите его.

  3. Отправлять соответствующие SNMP-сообщения на настроенный сервер, когда что-то происходит.

  4. Ответ на запросы от настроенного сервера.

Весь запрос / ответ выполняется с использованием сообщений SNMP. Если в вашей компании нет специально разработанного / назначенного OID для серверного программного обеспечения, вам необходимо изучить стандартные определения MIB, чтобы определить, какие OID являются подходящими.

MIB: Блок управляющей информации. Они бывают стандартных и пользовательских вкусов. Стандартные определяются органом по стандартизации (IETF?). Пользовательские производители создаются для поддержки информации, уникальной для их продуктов. MIB - это в основном наборы OID.

OID: Object IDentifier - это строка с точечной нотацией, которая идентифицирует часть аппаратного / программного обеспечения и часть информации, которую вы ищете из нее - например, количество коллизий TX на порте Ethernet может выглядеть примерно так: 1.5.82.316.8.4.3 (хотя это не действительный OID, это всего лишь выдуманный пример).

Более подробная информация доступна в Wikipedia . Загрузите бесплатный браузер MIB , чтобы получить представление о том, как выглядят идентификаторы OID и как подробно они могут быть получены. Проверьте RFC для более подробной информации. Посмотрите на что-то вроде Perl Net-SNMP - вы даже можете использовать прилагаемое к нему программное обеспечение snmpd для выполнения большей части вашей работы.

и часть информации, которую вы ищете по ней - например, количество коллизий TX на порте Ethernet может выглядеть примерно так: 1.5.82.316.8.4.3 (хотя это не допустимый OID, это просто сделано- пример).

Более подробная информация доступна в Википедии . Загрузите бесплатный браузер MIB , чтобы получить представление о том, как выглядят идентификаторы OID и как подробно они могут быть получены. Проверьте RFC для более подробной информации. Посмотрите на что-то вроде Perl Net-SNMP - вы даже можете использовать прилагаемое к нему программное обеспечение snmpd для выполнения большей части вашей работы.

и часть информации, которую вы ищете по ней - например, количество коллизий TX на порте Ethernet может выглядеть примерно так: 1.5.82.316.8.4.3 (хотя это не допустимый OID, это просто сделано- пример).

Более подробная информация доступна в Википедии . Загрузите бесплатный браузер MIB , чтобы получить представление о том, как выглядят идентификаторы OID и как подробно они могут быть получены. Проверьте RFC для более подробной информации. Посмотрите на что-то вроде Perl Net-SNMP - вы даже можете использовать прилагаемое к нему программное обеспечение snmpd для выполнения большей части вашей работы.

Более подробная информация доступна в Википедии . Загрузите бесплатный браузер MIB , чтобы получить представление о том, как выглядят идентификаторы OID и как подробно они могут быть получены. Проверьте RFC для более подробной информации. Посмотрите на что-то вроде Perl Net-SNMP - вы даже можете использовать прилагаемое к нему программное обеспечение snmpd для выполнения большей части вашей работы.

Более подробная информация доступна в Википедии . Загрузите бесплатный браузер MIB , чтобы получить представление о том, как выглядят идентификаторы OID и как подробно они могут быть получены. Проверьте RFC для более подробной информации. Посмотрите на что-то вроде Perl Net-SNMP - вы даже можете использовать прилагаемое к нему программное обеспечение snmpd для выполнения большей части вашей работы.

14
ответ дан 4 December 2019 в 08:53
поделиться

SNMP, безусловно, является приемлемым способом мониторинга вашей сети, устройств и серверов. Поскольку он использует UDP, он не будет чрезмерно нагружать сеть с помощью повторных попыток TCP и т. П. (Клиенты SNMP или должны быть спроектированы для обработки пропущенных пакетов и т. Д.). Кроме того, у вас будет огромный набор клиентских решений для мониторинга вашей системы и их интеграции.

Если вы планируете окончательное решение в Java, см. Документацию Java / SNMP и SNMP4J

. ] SNMP.com (основатель Джеффри Кейс, один из архитекторов SNMP) продает расширяемые агенты SNMP . Один из них может спасти вас от горя.

5
ответ дан 4 December 2019 в 08:53
поделиться

В nSoftware есть SNMP-агент (не бесплатный). Это может быть проще, чем бросить свой собственный.

Также посмотрите книгу Уильяма Сталлинга: SNMP .

3
ответ дан 4 December 2019 в 08:53
поделиться

Zenoss довольно сложен и поставляется со многими предустановленными SNMP-компонентами. Вам действительно нужно кодировать своих собственных агентов SNMP?

1
ответ дан 4 December 2019 в 08:53
поделиться

SNMP - это большая тема с большой сложностью, если вникнуть во все детали и все исторические версии протокола и связанных с ним инструментов. Я бы посоветовал взять копию Essential SNMP от Мауро и Шмидта, которая дает очень ясное введение как в фундаментальные идеи, лежащие в основе SNMP, так и практические примеры того, как начать с ним и использовать его. вместе с рядом различных инструментов.

1
ответ дан 4 December 2019 в 08:53
поделиться

вы можете прицелиться ниже и попробовать Cacti ( http://www.cacti.net/ ).

Я тоже попробовал Zenoss, но отказался. Cacti заработал довольно быстро. Я просто отслеживаю использование полосы пропускания довольно большого количества маршрутизаторов и многих портов в коммутаторах по всей стране. Но есть шаблоны для мониторинга всего, что больше связано с одним сервером (температура, скорость вентилятора и т. Д.)

BR. Андерс

0
ответ дан 4 December 2019 в 08:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: