-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add network_route collector #1811
Conversation
thanks for working on this. does it work with multiple routing tables? |
@roidelapluie Thanks for your comment. Currently only the main table is referenced. Should I include a custom routing table? |
b936b6e
to
16e41b7
Compare
What is the status this PR? Need some fixes? |
Haven't gotten time to review this in details but two things already:
|
@discordianfish Thank you for the review! The This exporter does not parse files etc. Which part of the test do you think would be better? |
@mdlayher Are you still maintaining your netlink package? And could we add RTA_MULTIPATH support? I'm going to assume you built the package in a testable way :) |
Hi everyone, as a node exporter user I am waiting this feature. Is there any update? |
I will fix it if I need to change code. |
"Isn't very active" != "not maintained", my netlink package is widely used and it's effectively complete. Netlink is not route netlink, and the mentioned "netlink" package conflates the two (among many other things) and adds an iproute2-like API. The equivalent layer in my ecosystem is https://github.com/jsimonetti/rtnetlink. I recently added RTA_MULTIPATH support. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mdlayher Thanks for clarifying! In that case I'd prefer keeping to use your netlink package.
@kamijin-fanta Can you update this PR to use https://github.com/jsimonetti/rtnetlink now that there is RTA_MULTIPATH support?
Signed-off-by: kamijin_fanta <[email protected]>
16e41b7
to
8450bd9
Compare
Signed-off-by: kamijin_fanta <[email protected]>
8450bd9
to
67480c5
Compare
Thanks for the library update. and I rewrote PR to use it. |
LGTM. @discordianfish Did you have time to review ? |
I'd still like to have tests ideally.. We can merge if that's really not possible but somebody should look into that first. |
I tried to mock the rtnetlink connection, but I couldn't do this because the function field interface is private. https://github.com/jsimonetti/rtnetlink/blob/master/conn.go |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, I'd say let's merge it as is for now then.
I'm going to merge this and fix the go.sum separately. |
* Update Build - Update CircleCI orb. - Update CIrcleCI Machine image. - Use golang-builder 1.15. * Update Go modules. * Fixup fixtures for XFS bug. Changes: * [CHANGE] Improve filter flag names. #1743 * [CHANGE] Add btrfs and powersupplyclass to list of exporters enabled by default #1897 * [FEATURE] Add fibre channel collector #1786 * [FEATURE] Expose cpu bugs and flags as info metrics. #1788 * [FEATURE] Add network_route collector #1811 * [FEATURE] Add zoneinfo collector #1922 * [ENHANCEMENT] Add more InfiniBand counters #1694 * [ENHANCEMENT] Add flag to aggr ipvs metrics to avoid high cardinality metrics #1709 * [ENHANCEMENT] Adding backlog/current queue length to qdisc collector #1732 * [ENHANCEMENT] Include TCP OutRsts in netstat metrics #1733 * [ENHANCEMENT] Add pool size to entropy collector #1753 * [ENHANCEMENT] Remove CGO dependencies for OpenBSD amd64 #1774 * [ENHANCEMENT] bcache: add writeback_rate_debug stats #1658 * [ENHANCEMENT] Add check state for mdadm arrays via node_md_state metric #1810 * [ENHANCEMENT] Expose XFS inode statistics #1870 * [ENHANCEMENT] Expose zfs zpool state #1878 * [ENHANCEMENT] Added an ability to pass collector.supervisord.url via SUPERVISORD_URL environment variable #1947 * [BUGFIX] filesystem_freebsd: Fix label values #1728 * [BUGFIX] Fix various procfs parsing errors #1735 * [BUGFIX] Handle no data from powersupplyclass #1747 * [BUGFIX] udp_queues_linux.go: s/upd/udp/ in two error strings #1769 * [BUGFIX] Fix node_scrape_collector_success behaviour #1816 * [BUGFIX] Fix NodeRAIDDegraded to not use a string rule expressions #1827 * [BUGFIX] fix: node_md_disks state label from fail to failed #1862 * [BUGFIX] Handle EPERM for syscall in timex collector #1938 * [BUGFIX] bcache: fix typo #1943 * [BUGFIX] Fix XFS read/write stats (prometheus/procfs#343) Signed-off-by: Ben Kochie <[email protected]>
* Update Build - Update CircleCI orb. - Update CIrcleCI Machine image. - Use golang-builder 1.15. * Update Go modules. * Fixup fixtures for XFS bug. NOTE: We have improved some of the flag naming conventions (PR #1743). The old names are deprecated and will be removed in 2.0. They will continue to work for backwards compatibility. * [CHANGE] Improve filter flag names #1743 * [CHANGE] Add btrfs and powersupplyclass to list of exporters enabled by default #1897 * [FEATURE] Add fibre channel collector #1786 * [FEATURE] Expose cpu bugs and flags as info metrics. #1788 * [FEATURE] Add network_route collector #1811 * [FEATURE] Add zoneinfo collector #1922 * [ENHANCEMENT] Add more InfiniBand counters #1694 * [ENHANCEMENT] Add flag to aggr ipvs metrics to avoid high cardinality metrics #1709 * [ENHANCEMENT] Adding backlog/current queue length to qdisc collector #1732 * [ENHANCEMENT] Include TCP OutRsts in netstat metrics #1733 * [ENHANCEMENT] Add pool size to entropy collector #1753 * [ENHANCEMENT] Remove CGO dependencies for OpenBSD amd64 #1774 * [ENHANCEMENT] bcache: add writeback_rate_debug stats #1658 * [ENHANCEMENT] Add check state for mdadm arrays via node_md_state metric #1810 * [ENHANCEMENT] Expose XFS inode statistics #1870 * [ENHANCEMENT] Expose zfs zpool state #1878 * [ENHANCEMENT] Added an ability to pass collector.supervisord.url via SUPERVISORD_URL environment variable #1947 * [BUGFIX] filesystem_freebsd: Fix label values #1728 * [BUGFIX] Fix various procfs parsing errors #1735 * [BUGFIX] Handle no data from powersupplyclass #1747 * [BUGFIX] udp_queues_linux.go: change upd to udp in two error strings #1769 * [BUGFIX] Fix node_scrape_collector_success behaviour #1816 * [BUGFIX] Fix NodeRAIDDegraded to not use a string rule expressions #1827 * [BUGFIX] Fix node_md_disks state label from fail to failed #1862 * [BUGFIX] Handle EPERM for syscall in timex collector #1938 * [BUGFIX] bcache: fix typo in a metric name #1943 * [BUGFIX] Fix XFS read/write stats (prometheus/procfs#343) Signed-off-by: Ben Kochie <[email protected]>
* Update Build - Update CircleCI orb. - Update CIrcleCI Machine image. - Use golang-builder 1.15. * Update Go modules. * Fixup fixtures for XFS bug. NOTE: We have improved some of the flag naming conventions (PR prometheus#1743). The old names are deprecated and will be removed in 2.0. They will continue to work for backwards compatibility. * [CHANGE] Improve filter flag names prometheus#1743 * [CHANGE] Add btrfs and powersupplyclass to list of exporters enabled by default prometheus#1897 * [FEATURE] Add fibre channel collector prometheus#1786 * [FEATURE] Expose cpu bugs and flags as info metrics. prometheus#1788 * [FEATURE] Add network_route collector prometheus#1811 * [FEATURE] Add zoneinfo collector prometheus#1922 * [ENHANCEMENT] Add more InfiniBand counters prometheus#1694 * [ENHANCEMENT] Add flag to aggr ipvs metrics to avoid high cardinality metrics prometheus#1709 * [ENHANCEMENT] Adding backlog/current queue length to qdisc collector prometheus#1732 * [ENHANCEMENT] Include TCP OutRsts in netstat metrics prometheus#1733 * [ENHANCEMENT] Add pool size to entropy collector prometheus#1753 * [ENHANCEMENT] Remove CGO dependencies for OpenBSD amd64 prometheus#1774 * [ENHANCEMENT] bcache: add writeback_rate_debug stats prometheus#1658 * [ENHANCEMENT] Add check state for mdadm arrays via node_md_state metric prometheus#1810 * [ENHANCEMENT] Expose XFS inode statistics prometheus#1870 * [ENHANCEMENT] Expose zfs zpool state prometheus#1878 * [ENHANCEMENT] Added an ability to pass collector.supervisord.url via SUPERVISORD_URL environment variable prometheus#1947 * [BUGFIX] filesystem_freebsd: Fix label values prometheus#1728 * [BUGFIX] Fix various procfs parsing errors prometheus#1735 * [BUGFIX] Handle no data from powersupplyclass prometheus#1747 * [BUGFIX] udp_queues_linux.go: change upd to udp in two error strings prometheus#1769 * [BUGFIX] Fix node_scrape_collector_success behaviour prometheus#1816 * [BUGFIX] Fix NodeRAIDDegraded to not use a string rule expressions prometheus#1827 * [BUGFIX] Fix node_md_disks state label from fail to failed prometheus#1862 * [BUGFIX] Handle EPERM for syscall in timex collector prometheus#1938 * [BUGFIX] bcache: fix typo in a metric name prometheus#1943 * [BUGFIX] Fix XFS read/write stats (prometheus/procfs#343) Signed-off-by: Ben Kochie <[email protected]>
* Update Build - Update CircleCI orb. - Update CIrcleCI Machine image. - Use golang-builder 1.15. * Update Go modules. * Fixup fixtures for XFS bug. NOTE: We have improved some of the flag naming conventions (PR prometheus#1743). The old names are deprecated and will be removed in 2.0. They will continue to work for backwards compatibility. * [CHANGE] Improve filter flag names prometheus#1743 * [CHANGE] Add btrfs and powersupplyclass to list of exporters enabled by default prometheus#1897 * [FEATURE] Add fibre channel collector prometheus#1786 * [FEATURE] Expose cpu bugs and flags as info metrics. prometheus#1788 * [FEATURE] Add network_route collector prometheus#1811 * [FEATURE] Add zoneinfo collector prometheus#1922 * [ENHANCEMENT] Add more InfiniBand counters prometheus#1694 * [ENHANCEMENT] Add flag to aggr ipvs metrics to avoid high cardinality metrics prometheus#1709 * [ENHANCEMENT] Adding backlog/current queue length to qdisc collector prometheus#1732 * [ENHANCEMENT] Include TCP OutRsts in netstat metrics prometheus#1733 * [ENHANCEMENT] Add pool size to entropy collector prometheus#1753 * [ENHANCEMENT] Remove CGO dependencies for OpenBSD amd64 prometheus#1774 * [ENHANCEMENT] bcache: add writeback_rate_debug stats prometheus#1658 * [ENHANCEMENT] Add check state for mdadm arrays via node_md_state metric prometheus#1810 * [ENHANCEMENT] Expose XFS inode statistics prometheus#1870 * [ENHANCEMENT] Expose zfs zpool state prometheus#1878 * [ENHANCEMENT] Added an ability to pass collector.supervisord.url via SUPERVISORD_URL environment variable prometheus#1947 * [BUGFIX] filesystem_freebsd: Fix label values prometheus#1728 * [BUGFIX] Fix various procfs parsing errors prometheus#1735 * [BUGFIX] Handle no data from powersupplyclass prometheus#1747 * [BUGFIX] udp_queues_linux.go: change upd to udp in two error strings prometheus#1769 * [BUGFIX] Fix node_scrape_collector_success behaviour prometheus#1816 * [BUGFIX] Fix NodeRAIDDegraded to not use a string rule expressions prometheus#1827 * [BUGFIX] Fix node_md_disks state label from fail to failed prometheus#1862 * [BUGFIX] Handle EPERM for syscall in timex collector prometheus#1938 * [BUGFIX] bcache: fix typo in a metric name prometheus#1943 * [BUGFIX] Fix XFS read/write stats (prometheus/procfs#343) Signed-off-by: Ben Kochie <[email protected]>
The routing table is an important monitoring metric when operating Linux as a router. The routing table actually set by BGP, OSPF, etc. is useful for troubleshooting.
reference issue #1639
example outputs