Skip to content
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

[WIP] [PoC] publish all notifications #1451

Conversation

denis-tingaikin
Copy link

Motivation

#1450

@milanlenco
Copy link
Collaborator

Hi @denis-tingajkin,

could you re-test with this PR applied: #1453 ?
This fix should give you all the interface UP/DOWN events. But note that notifications about packet/byte counter changes are intentionally not sent through GRPC since they are very frequent and not suitable for that transport we think.
We actually prefer to publish the counters using e.g. Prometheus. This is provided by the Telemetry plugin - for inspiration on how to deploy agent with Prometheus and display stats via Grafana, see https://github.com/ligato/vpp-agent/wiki/Telemetry.
Also, the interface plugin still uses the old and slow binary API based access to interface statistics which slows down the VPP main thread, whereas Telemetry plugins reads stats from a shared memory without blocking VPP.

@edwarnicke
Copy link
Contributor

Hi @denis-tingajkin,

could you re-test with this PR applied: #1453 ?
This fix should give you all the interface UP/DOWN events. But note that notifications about packet/byte counter changes are intentionally not sent through GRPC since they are very frequent and not suitable for that transport we think.

Would it be possible to get them at a requested interval?

We actually prefer to publish the counters using e.g. Prometheus. This is provided by the Telemetry plugin - for inspiration on how to deploy agent with Prometheus and display stats via Grafana, see https://github.com/ligato/vpp-agent/wiki/Telemetry.

That's a good thing to have, but doesn't meet our need. We don't need Ligato Prometheus stats, we need NSM Connection metrics... in other words... we need you to give them to us so we can correlate them correctly with other metadata to report them to other systems. I get that you can't update us everytime you get updated (that's a lot of events). But we would want to ask for them at some time interval and get updates at that interval.

Also, the interface plugin still uses the old and slow binary API based access to interface statistics which slows down the VPP main thread, whereas Telemetry plugins reads stats from a shared memory without blocking VPP.

Again... we need the data directly, via GRPC, not Prometheus.

@ondrej-fabry
Copy link
Member

I went over the requirements with Ed today and planning to provide some simple way to consume metrics using custom time periods.

@BoutheinaDab
Copy link

@ondrej-fabry @edwarnicke Want to know please if vpp-agent is able know to provide interface metrics at time periods?

@ondrej-fabry
Copy link
Member

@BoutheinaDab check out #1495

@denis-tingaikin
Copy link
Author

denis-tingaikin commented Oct 19, 2019

@BoutheinaDab check out #1495

@ondrej-fabry we found that StatsPollerService is part of telemetry plugin. Please correct me if I wrong. We don't want to use the telemetry plugin on NSM side. Can we implement/use StatsPollerService without a telemetry plugin?

@ondrej-fabry
Copy link
Member

@denis-tingajkin check out #1532, it adds PrometheusDisabled option to disable collection and export for Prometheus, which is what you don't use anyway.

@denis-tingaikin
Copy link
Author

@ondrej-fabry thanks, I tried to use stats poller service and it is not working for me. Please take a look #1538.

@denis-tingaikin
Copy link
Author

StatsPollerService has been implemented. This PR can be closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants