Jeffrey Stedfast
                                            Jeffrey Stedfast
                                        
                                    Okay, how do you propose adding this to MailKit?
> Well I'd suggest: > * [Metrics](https://learn.microsoft.com/en-us/dotnet/core/diagnostics/metrics-instrumentation) - wrapping IO operations in timers (histograms of TimeSpan in my code examples) > * adding exception/error counters with appropriate tagging Right, but...
@EugeneKrapivin can you help define which metrics (and other info) you want/need? I'll put this in the queue for a future v5.0 release but first I need to know what...
@EugeneKrapivin Thanks for taking the time to respond and share your ideas. I'll definitely be trying to read up on Microsoft's guides on best practices.
Ah, cool, I should look at how HttpClient does stuff as that might make be a close match with MailKit's client APIs.
Some docs on dotnet's built-in networking (including HttpClient) metrics: https://learn.microsoft.com/en-us/dotnet/core/diagnostics/built-in-metrics-system-net#metric-httpclientopen_connections Also seems like this Meter stuff is only in net8.0?
A few things I'm not clear about: 1. A `Meter` has a `name` and is used to create Counters and Histograms, which also have names. How do those names inter-relate?...
I would still like answers to my questions in the previous comment, but these are the metrics that I've come up with so far (mostly focused on SmtpClient at the...
First, I'd like to say that I'm not completely happy with the metric names I've come up with, especially the `.counter` and `.failures` metric names. I'd also like to get...
Ok, so reading over https://github.com/open-telemetry/semantic-conventions/blob/main/docs/general/metrics.md#naming-rules-for-counters-and-updowncounters I guess I should probably make the following name changes: * `mailkit.net.smtp.client.connect.counter` -> `mailkit.net.smtp.client.connect.count` * `mailkit.net.smtp.client.connect.failures` -> `mailkit.net.smtp.client.connect.faults` ? * `mailkit.net.smtp.client.send.messages` -> `mailkit.net.smtp.client.send.count` * `mailkit.net.smtp.client.send.failures`...