Ilya Evseev Опубликовано 31 октября, 2011 · Жалоба Есть FreeBSD 8.2/i386 Через сетевой интерфейс проходит трафик > 100mbps. Munin рисует его с пустыми полосами на месте пиков. В описании плагина "if_" честно сказано: Since the data source for this plugin use 32bit counters,this plugin is really unreliable and unsuitable for most 100Mb (or faster) interfaces, where bursts are expected to exceed 50Mbps. This means that this plugin is unsuitable for most production environments. Внутри он использует "netstat -i -b -n -I $iface". Судя по http://wiki.freebsd.org/LibNetstat - проблема ещё не решена: "Add support for multi-platform atomic 64-bit counters for tracking network statistics properly." = deferred. Хотя судя по http://web.archiveorange.com/archive/v/GQJ3kIHxA0nRB7v99774 - ей уже почти 10 лет. Вопрос: можно ли базовыми средствами FreeBSD обойти данное ограничение, как это делает net-snmp с опцией WITH_MFD_REWRITES? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
mousus Опубликовано 1 ноября, 2011 · Жалоба http://forum.nag.ru/forum/index.php?showtopic=52866 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ilya Evseev Опубликовано 1 ноября, 2011 · Жалоба http://forum.nag.ru/...showtopic=52866 Там про SNMP и Cacti, а у меня netstat и Munin. Как собирать SNMP, уже известно: make -C /usr/ports/net-mgmt/net-snmp install clean WITH_MFD_REWRITES=1 Как исправлять Cacti, тоже понятно: "rrdtool tune -a ..." в /usr/local/share/cacti/rra для файлов трафика. Но ни то, ни другое к Munin отношения не имеет. Скорее всего, придётся заменить плагин "if_" на "snmp__if_" Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 1 ноября, 2011 · Жалоба Есть FreeBSD 8.2/i386 Через сетевой интерфейс проходит трафик > 100mbps. Munin рисует его с пустыми полосами на месте пиков. В описании плагина "if_" честно сказано: Since the data source for this plugin use 32bit counters,this plugin is really unreliable and unsuitable for most 100Mb (or faster) interfaces, where bursts are expected to exceed 50Mbps. This means that this plugin is unsuitable for most production environments. Внутри он использует "netstat -i -b -n -I $iface". Судя по http://wiki.freebsd.org/LibNetstat - проблема ещё не решена: "Add support for multi-platform atomic 64-bit counters for tracking network statistics properly." = deferred. Хотя судя по http://web.archiveor...IHxA0nRB7v99774 - ей уже почти 10 лет. Вопрос: можно ли базовыми средствами FreeBSD обойти данное ограничение, как это делает net-snmp с опцией WITH_MFD_REWRITES? Ответ на ваши вопросы - в иходниках фряхи. Как минимум в драйверах свои счётчики обычно делаются 64 и доступными через sysctl. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
littlesavage Опубликовано 1 ноября, 2011 · Жалоба Я не нашел. bsnmpd для эмуляции 64-битных счетчиков снимает раз в минуту 32-битные. Сделал в свое время плагин для munin, снимающий счетчики sysctl dev.em.xx.mac_stats: http://exchange.munin-monitoring.org/plugins/ifem_/details Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 6 ноября, 2011 · Жалоба /usr/src/sys/net.if.h /* * Structure describing information about an interface * which may be of interest to management entities. */ struct if_data { /* generic interface information */ u_char ifi_type; /* ethernet, tokenring, etc */ u_char ifi_physical; /* e.g., AUI, Thinnet, 10base-T, etc */ u_char ifi_addrlen; /* media address length */ u_char ifi_hdrlen; /* media header length */ u_char ifi_link_state; /* current link state */ u_char ifi_spare_char1; /* spare byte */ u_char ifi_spare_char2; /* spare byte */ u_char ifi_datalen; /* length of this data struct */ u_long ifi_mtu; /* maximum transmission unit */ u_long ifi_metric; /* routing metric (external only) */ u_long ifi_baudrate; /* linespeed */ /* volatile statistics */ u_long ifi_ipackets; /* packets received on interface */ u_long ifi_ierrors; /* input errors on interface */ u_long ifi_opackets; /* packets sent on interface */ u_long ifi_oerrors; /* output errors on interface */ u_long ifi_collisions; /* collisions on csma interfaces */ u_long ifi_ibytes; /* total number of octets received */ u_long ifi_obytes; /* total number of octets sent */ u_long ifi_imcasts; /* packets received via multicast */ u_long ifi_omcasts; /* packets sent via multicast */ u_long ifi_iqdrops; /* dropped on input, this interface */ u_long ifi_noproto; /* destined for unsupported protocol */ u_long ifi_hwassist; /* HW offload capabilities, see IFCAP */ time_t ifi_epoch; /* uptime at attach or stat reset */ struct timeval ifi_lastchange; /* time of last administrative change */ }; Эти счётчики видно по: netstat -idbhtW Если хочется 64 бита, можно на нетграфе считать, правда хз как это потом прикручивать к стандартному SMNPd Ещё есть счётчики в драйверах, обычно они доступны по sysctl и они как раз 64 битные: dev.em.0.mac_stats.excess_coll: 0 dev.em.0.mac_stats.single_coll: 0 dev.em.0.mac_stats.multiple_coll: 0 dev.em.0.mac_stats.late_coll: 0 dev.em.0.mac_stats.collision_count: 0 dev.em.0.mac_stats.symbol_errors: 0 dev.em.0.mac_stats.sequence_errors: 0 dev.em.0.mac_stats.defer_count: 0 dev.em.0.mac_stats.missed_packets: 0 dev.em.0.mac_stats.recv_no_buff: 0 dev.em.0.mac_stats.recv_undersize: 0 dev.em.0.mac_stats.recv_fragmented: 0 dev.em.0.mac_stats.recv_oversize: 0 dev.em.0.mac_stats.recv_jabber: 0 dev.em.0.mac_stats.recv_errs: 0 dev.em.0.mac_stats.crc_errs: 0 dev.em.0.mac_stats.alignment_errs: 0 dev.em.0.mac_stats.coll_ext_errs: 0 dev.em.0.mac_stats.xon_recvd: 0 dev.em.0.mac_stats.xon_txd: 0 dev.em.0.mac_stats.xoff_recvd: 0 dev.em.0.mac_stats.xoff_txd: 0 dev.em.0.mac_stats.total_pkts_recvd: 4013097 dev.em.0.mac_stats.good_pkts_recvd: 4013097 dev.em.0.mac_stats.bcast_pkts_recvd: 24144 dev.em.0.mac_stats.mcast_pkts_recvd: 0 dev.em.0.mac_stats.rx_frames_64: 0 dev.em.0.mac_stats.rx_frames_65_127: 1581390 dev.em.0.mac_stats.rx_frames_128_255: 511687 dev.em.0.mac_stats.rx_frames_256_511: 110490 dev.em.0.mac_stats.rx_frames_512_1023: 127240 dev.em.0.mac_stats.rx_frames_1024_1522: 1682290 dev.em.0.mac_stats.good_octets_recvd: 2835108776 [b]dev.em.0.mac_stats.good_octets_txd: 5259590736[/b] dev.em.0.mac_stats.total_pkts_txd: 6205283 dev.em.0.mac_stats.good_pkts_txd: 6205283 dev.em.0.mac_stats.bcast_pkts_txd: 4535 dev.em.0.mac_stats.mcast_pkts_txd: 0 dev.em.0.mac_stats.tx_frames_64: 315121 dev.em.0.mac_stats.tx_frames_65_127: 2631754 dev.em.0.mac_stats.tx_frames_128_255: 108194 dev.em.0.mac_stats.tx_frames_256_511: 287739 dev.em.0.mac_stats.tx_frames_512_1023: 115448 dev.em.0.mac_stats.tx_frames_1024_1522: 2747027 dev.em.0.mac_stats.tso_txd: 0 dev.em.0.mac_stats.tso_ctx_fail: 0 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
littlesavage Опубликовано 6 ноября, 2011 · Жалоба u_long ifi_ibytes; /* total number of octets received */ u_long ifi_obytes; /* total number of octets sent */ Эти счётчики видно по: netstat -idbhtW Именно они и 32-битные. Если хочется 64 бита, можно на нетграфе считать, правда хз как это потом прикручивать к стандартному SMNPd Да, можно еще счетчиками ipfw Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
fsb Опубликовано 6 декабря, 2011 · Жалоба фря 7, 8; em0, bsnmpd. показывает без проблем коунтеры64, график без обвалов Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ilya Evseev Опубликовано 7 декабря, 2011 · Жалоба bsnmpd. показывает без проблем коунтеры64 С SNMP проблем нет и не было. Проблема именно с Munin-агентом. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ilya Evseev Опубликовано 6 января, 2012 · Жалоба Сделал в свое время плагин для munin, снимающий счетчики sysctl dev.em.xx.mac_stats В описании ipfwcnt_ есть небольшая ошибка - в plugins.conf после "env" должен быть не пробел, а точка. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...