.net standard support
Opened this issue ยท 19 comments
Hi, is there any plans on porting the library to .net standard ?
I have forked the repo and I am investigating what it would take to support netstandard. I will list the issues I discover (if any).
Here are the issues I found that would need to be resolved to support netstandard:
- Several methods are decorated with
[MethodImpl(MethodImplOptions.Synchronized)]
. 'Synchronized' is not available in netstandard 1.6 (although it's rumored to be back in netstandard 2,0. I haven't verified) - ConfigurationManager is not available in netstandard
- WebClient is not available in netstandard
- WebRequest is not available in netstandard
- HttpListener is not available in netstandard
- HttpListenerContext is not available in netstandard
- HttpListenerException is not available in netstandard
- HttpListenerRequest is not available in netstandard
- HttpListenerResponse is not available in netstandard
I seems that .NET Standard 2.0 provides all necessary types except for ConfigurationManager
.
Any chance for update? As far as I know ConfigurationManager
is used only as a convnient way to set up Metrics.Reports.ToleratedConsecutiveFailures
, Metrics.HttpListener.HttpUriPrefix
and Metrics.GlobalContextName
from appSettings
. That could be ommited in .NET Standard 2.0.
I am working on this - current work in progress is here: https://github.com/megakid/Metrics.NET/tree/netcore
@megakid Is the port going well? Need any help? Looks like most work is in the samples and adapters..
@rofr I think the port is pretty much done but I don't have any experience with Nancy and Owin. I have introduced a new AspNetCore adapter, pretty much copy pasted from Owin and tweaked.
Everything I have tested is working, I'll create a PR and would appreciate a review/comments.
@megakid awesome, I'll have a look. I'll also tell the nancy dev team, maybe one of them can help review.
Any news on this?
any update?
here's my 2 cents:
https://github.com/micdenny/Metrics.NET/tree/netcore
I've just convertered the main project Metrics
and in this way all the performance counters works on netcore webapi projects that is what I need right now (normal metrics works with the actual fullfx version). I've tried adding the shims, but then a problem with async start throwing, so I've tried to do the less step to convert the in project in netcore and I did it adding only Microsoft.CSharp
, System.Configuration.ConfigurationManager
and System.Diagnostics.PerformanceCounter
on top of netstandard2.0
Looks like this project is dead.
We've moved to https://www.app-metrics.io/ which was forked from this project.
@megakid so... I'm confused - I thought this repo was continuing under @Recognos, while the app-metrics.io fork was created by someone else after some disagreements about how/when .NET Standard support should be implemented?
I'm not sure of the origins of app-metrics vs metrics.net but app-metrics is similar enough (API wise), seems to be more active and works well for us (e.g. my day job) in production. The number 1 reason we migrated away from this project is because we want to proceed with .NET Core ASAP and Metrics.NET was our main blocker.
I originally planned to do some work on Metrics.NET to help the .NET Core migration but wasn't able to devote much time to it, then we found app-metrics...