-
Notifications
You must be signed in to change notification settings - Fork 595
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
Performance counters (metrics) #1027
Performance counters (metrics) #1027
Conversation
projects/RabbitMQ.Client/client/logging/RabbitMqClientEventSource.cs
Outdated
Show resolved
Hide resolved
[EventSource(Name="rabbitmq-dotnet-client")] | ||
public sealed class RabbitMqClientEventSource : EventSource | ||
#nullable enable | ||
internal sealed partial class RabbitMqClientEventSource : EventSource |
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.
I changed it to internal, as others shouldn't be able to do anything with these methods here
Should the totals be named in plural, e.g.
We can also use the terms from the Prometheus/OpenTelemetry communities, e.g. gauge and counter for suffixes. |
Happy to adapt to whatever we agree upon 👍 |
Looking at those search results I'd say the names should be
This would very much follow the names in |
I used to have the closed counterpart, but the thing is you always want to know how many are still open, so you have to compare agsinst the open counter. => just have an open/current counter. |
This is awesome! I'd love to see frames sent/received if that's not too hard to add as well. |
Yes, names can be underscored or dashed as conventional in this particular community. |
Frames received is easy, sent not really as we combine the three frames of a basic deliver method into one byte blob to send. (See the bytes/command sent, they're done in the same place) And only having the frames received is also strange, that's why I havet't added them in this first draft. Do you have an idea on how we could solve this best? |
0da3288
to
04b007b
Compare
Updated the names to
Also updated the event source name to rabbitmq-client |
@bollhals can you please rebase this on top of |
04b007b
to
6e6ab3e
Compare
done, when the build is still successful, we can merge. |
I'm not able to read these metrics, by dotnet monitor. I'm using Masstranist with Rabbitmq transport, I tried |
I'm not sure whether this is in the 6.x branch or is yet to be released. |
@bollhals When this is going to be merged or released? |
@xsoheilalizadeh - I suggest checking out the @Gsantomaggio @michaelklishin back port? |
Unfortunately, that's not an option for me. |
@lukebakken given that this is a feature and not a bug, maybe we should ship 7.0 sooner. I wouldn't be against backporting but again, it is not a bug fix and this community cares a lot about us following the strict interpretation of SemVer. |
Up to you guys. Irrespective pf this, I'd advise to start a thread about 7.0 and the remaining work so anyone has the same understanding and the community knows what/when to expect. |
Do you have any ETA for 7.0 release? |
No we do not. |
@bollhals @lukebakken @michaelklishin - is there a reason the event source name was changed from |
@eerhardt having "dotnet" in the name seems redundant. It was introduced for the next major version, I don't think a breaking change in a new major should generally be considered controversial. |
@eerhardt my guess is that since the main namespace for this client is |
Proposed Changes
This change introduces performance counters for the client.
For now available are:
fixes the counter part of #776
I've also fixed in the first commit a bug that happens if the first read into the header buffer returned not the full 7 bytes. (happend a lot when I ran the MassPublish test app with 50 mio messages.)
Types of Changes
Checklist
CONTRIBUTING.md
document