== Why is this an issue? A log entry should contain all the relevant information about the current execution context. The https://learn.microsoft.com/en-us/dotnet/api/system.exception[Exception] raised in a catch block not only provides the message but also: * the exception type * the https://learn.microsoft.com/en-us/dotnet/api/system.exception.stacktrace[stack trace] * any https://learn.microsoft.com/en-us/dotnet/api/system.exception.innerexception[inner exceptions] * and more about the cause of the error. https://learn.microsoft.com/en-us/dotnet/api/microsoft.extensions.logging.loggerextensions[Logging methods] provide overloads that accept an `Exception` as a parameter and https://learn.microsoft.com/en-us/dotnet/core/extensions/logging-providers[logging providers] persist the `Exception` in a structured way to facilitate the tracking of system failures. Therefore `Exceptions` should be passed to the logger. The rule covers the following logging frameworks: * Nuget package - https://www.nuget.org/packages/Castle.Core[Castle.Core] * Nuget package - https://www.nuget.org/packages/Common.Logging.Core[Common.Core] * Nuget package - https://www.nuget.org/packages/log4net[log4net] * Nuget package - https://www.nuget.org/packages/NLog[NLog] * Nuget package - https://www.nuget.org/packages/Microsoft.Extensions.Logging[Microsoft.Extensions.Logging]