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

Question: why telementry plugin use api sock to dump memory telemetry rather than stats.sock? #1908

Open
scottlx opened this issue Feb 8, 2023 · 2 comments

Comments

@scottlx
Copy link

scottlx commented Feb 8, 2023

vpp has stats.sock for system, memory stats. But telemetry plugin use api.sock with vpe to dump memory by CLI. Because vpp api node is single thread and will not put msg into channel like what govpp does. This could cause reply timeout when govpp sends msg into api.sock in a high freqeuncy, which influnces other api request.

@ondrej-fabry
Copy link
Member

ondrej-fabry commented Feb 8, 2023

Hello @scottlx,

Thanks for the issue report.

This is probably due legacy implementation of Telemetry plugin. At the time when the plugin was implemented, it was not possible to retrieve memory statistics via VPP Stats API (stats.sock).

I will add this to a backlog, however you're welcome to open a PR to fix this if that is something you would be open to do.

@scottlx
Copy link
Author

scottlx commented Feb 8, 2023

Thanks for your reply. It makes sense.

And I guess another reason might be that vpp stats api does not provide detailed metrics than cli does. For example, "show memory main-heap verbose" shows memory usage per thread. But stats api only shows global memory usages. I am also confused why api, cli, and stats in vpp are not consist with each other.

Now I am working on this issue both on vpp side and agent side.

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

No branches or pull requests

2 participants