:language_std_outputs: Console == Why is this an issue? include::../description.adoc[] === Exceptions The rule doesn't raise an issue for: * Console Applications * Calls in methods decorated with `[Conditional ("DEBUG")]` * Calls included in DEBUG preprocessor branches (``++#if DEBUG++``) === Code examples The following noncompliant code: [source,csharp,diff-id=1,diff-type=noncompliant] ---- public class MyClass { private void DoSomething() { // ... Console.WriteLine("My Message"); // Noncompliant // ... } } ---- Could be replaced by: [source,csharp,diff-id=1,diff-type=compliant] ---- public class MyClass { private readonly ILogger _logger; // ... private void DoSomething() { // ... _logger.LogInformation("My Message"); // ... } } ---- == Resources * OWASP - https://owasp.org/Top10/A09_2021-Security_Logging_and_Monitoring_Failures/[Top 10 2021 Category A9 - Security Logging and Monitoring Failures] * OWASP - https://www.owasp.org/www-project-top-ten/2017/A3_2017-Sensitive_Data_Exposure[Top 10 2017 Category A3 - Sensitive Data Exposure] ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) include::../message.adoc[] ''' == Comments And Links (visible only on this page) === on 30 Aug 2018, 15:48:10 Nicolas Harraudeau wrote: Previously RSPEC-2556 See Gendarme DisableDebuggingCodeRule include::../comments-and-links.adoc[] endif::env-github,rspecator-view[]