elmah / Elmah

Error Logging Modules & Handlers for ASP.NET
https://elmah.github.io/
Apache License 2.0
306 stars 65 forks source link

Will ELMAH be ported to ASP.NET Core? #407

Open mgmccarthy opened 7 years ago

mgmccarthy commented 7 years ago

I'm having a hard time finding information about this. I realize there is cloud-based elmah.io project (https://elmah.io/) that is has a beta out for .NET Core, but that's a different project and in no way affiliated with ELMAH (at least I think it is)...

any info you could provide would be helpful.

atifaziz commented 7 years ago

I realize there is cloud-based elmah.io project…but that's a different project and in no way affiliated with ELMAH (at least I think it is)...

That's correct. It's a completely different project run by @ThomasArdal.

Will ELMAH be ported to ASP.NET Core?

It's more of an “if & when time permits” than a definite “no”. If it depends entirely on me then I'm afraid for you that it'll be on my agenda and when I'm ready to ship my first ASP.NET Core project. If some people have already jumped on that bandwagon, well-versed in ASP.NET Core, care about backward compatibility & would like to help make it happen sooner then it could.

ThomasArdal commented 7 years ago

@mgmccarthy I'm Thomas, the founder of elmah.io and as @atifaziz says, it's a different project with what turned out as a bad naming choice.

I have promissed Atif to look at ELMAH for ASP.NET Core. I decided to implement the beta for elmah.io first, to find out how middleware are implemented for ASP.NET Core. I feel that the implementation is in pretty good shape right now and I would love to merge the implementation back to the ELMAH project.

@atifaziz Would you mind taking a look at the implementation for Elmah.Io.AspNetCore and share if you would want some of the code. Maybe just for inspiration. I know there's an OWIN branch on ELMAH, but I guess that one were never actually ported to Core, right?

atifaziz commented 7 years ago

@ThomasArdal Thanks for sharing that Thomas but it's only a very small piece (posting an error) of the entire feature set and so the bulk of the work (UI, mailing, authorisation, log stores, refactoring of code & packages, testability, etc.) is still pending and requires a fair amount of time.

I know there's an OWIN branch on ELMAH, but I guess that one were never actually ported to Core, right?

Correct.

ThomasArdal commented 7 years ago

@atifaziz I know 😄 Should we create a new branch for core or do you want to continue the work on the owin branch?

atifaziz commented 7 years ago

A new branch on top of the owin one probably makes sense but before that, I think that the existing repo needs to be refactored into different ones: one for the core bits and then separate ones for the error log implementations so each can have its own issues, versions and release cycles. Then merge that structure into the OWIN version and then start the ASP.NET Core port. That's just thinking from the top of my head.

On 14 Oct 2016, at 07:14, Thomas Ardal notifications@github.com wrote:

@atifaziz I know 😄 Should we create a new branch for core or do you want to continue the work on the owin branch?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

ThomasArdal commented 7 years ago

@atifaziz I'm not sure about the state of the OWIN branch. Would it make sense to create a 2.0 branch from master and make the split there? Then pick the changes from the owin branch that makes sense for core and put them into the 2.0 branch? Or do you believe that the owin branch is in a state where we could build 2.0 from that?

atifaziz commented 7 years ago

@ThomasArdal master represents the latest development, which is already 2.0.

ThomasArdal commented 7 years ago

@atifaziz Ok. Is ELMAH on the owin branch still based on modules? Was looking into creating middleware for core instead.

atifaziz commented 7 years ago

@ThomasArdal ASP.NET Core borrows the idea of middleware from OWIN. In fact, it even supports OWIN middleware. So naturally the owin branch isn't based on modules. Have a look at Owin.cs where most of the attempt was done & works to a very large extent. See the following extension methods that setup the middleware in the pipeline via IAppBuilder:

I mostly stopped working on all this when I found out that ASP.NET vNext (at the time) wasn't going to be based on OWIN. Wanted the let the dust settle down.

ThomasArdal commented 7 years ago

@atifaziz Makes sense. I will have a look at porting the OWIN middleware to ASP.NET Core middleware when time allows. Thanks.

milla commented 7 years ago

Is the release date for elmah .net core planned :)

atifaziz commented 7 years ago

@milla See my earlier comment:

If it depends entirely on me then I'm afraid for you that it'll be on my agenda and when I'm ready to ship my first ASP.NET Core project. If some people have already jumped on that bandwagon, well-versed in ASP.NET Core, care about backward compatibility & would like to help make it happen sooner then it could.

mgmccarthy commented 7 years ago

@ThomasArdal any progress made on porting the OWIN middleware to ASP.NET Core middleware?

I'd like to jump in and help, but I'm currently using most of my free time on another open source project which I would like to use ELMAH on.

ThomasArdal commented 7 years ago

@mgmccarthy No :( Haven't had time to look at it either.

atifaziz commented 6 years ago

the existing repo needs to be refactored into different ones: one for the core bits and then separate ones for the error log implementations so each can have its own issues, versions and release cycles.

This was done in #418.

szalapski commented 6 years ago

Any updates on how to use ELMAH or something similar in .NET Core?

atifaziz commented 6 years ago

@szalapski The update is that I'm afraid it's no different than my initial comment:

Will ELMAH be ported to ASP.NET Core?

It's more of an “if & when time permits” than a definite “no”. If it depends entirely on me then I'm afraid for you that it'll be on my agenda and when I'm ready to ship my first ASP.NET Core project. If some people have already jumped on that bandwagon, well-versed in ASP.NET Core, care about backward compatibility & would like to help make it happen sooner then it could.

I have shipped ASP.NET Core projects since and I'm beginning to feel the itch or miss ELMAH myself but the pain hasn't reached a level where I feel compelled to dive in alone.

As for something similar for .NET Core, I'm not aware of anything except ElmahCore by @barestan.

frattaro commented 6 years ago

I don't know why Microsoft doesn't pick this up. This library is the main reason I don't use .net core (System.DirectoryServices is another, but that is coming out in core 2.1).

ofuochi commented 6 years ago

@frattaro This is exactly my case too. I can't afford the subscription for elmah.io :(