Painless integration of ELMAH error logging into ASP.NET MVC applications with MVC-style routing and security.
ELMAH.MVC is a NuGet package that simplifies integrating ELMAH (Error Logging Modules and Handlers) into ASP.NET MVC applications. It replaces ELMAH's default `.axd` handler with MVC-style routing, providing a cleaner URL structure and built-in security features to prevent session hijacking vulnerabilities.
ASP.NET MVC developers who need robust, easy-to-configure error logging in their web applications without manual routing or security workarounds.
Developers choose ELMAH.MVC because it eliminates the security risks of `.axd` handlers, offers seamless integration with MVC conventions, and includes configurable authentication and routing out of the box.
Painless integration of ELMAH into ASP.NET MVC application
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Replaces insecure .axd handlers with a clean /elmah route, directly addressing session hijacking vulnerabilities as cited in the README referencing Troy Hunt's article.
Automatically includes a global HandleErrorAttribute, eliminating the need for custom error filter implementations common in vanilla ELMAH setups, simplifying integration.
Offers granular control via web.config for authentication, roles, and user access, making it easy to restrict error log visibility without custom code.
Ensures exceptions are logged even when customError='On', preventing loss of error data in production environments, as explicitly stated in the README.
The README admits a persistent issue where custom routes may not fully override the default /elmah, requiring explicit ignore rules or application restructuring, which can be confusing.
Security settings like allowedRoles and allowedUsers have nuanced interactions (e.g., both must be satisfied), leading to potential misconfiguration and access denials if not carefully managed.
Tied exclusively to ASP.NET MVC; incompatible with ASP.NET Core or newer frameworks, forcing teams to seek alternatives for modern .NET developments.