﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.8.1/dotnetdoc/api/Apache.Ignite.Core.Log.CategoryLogger.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class CategoryLogger
   | Apache Ignite.NET </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class CategoryLogger
   | Apache Ignite.NET ">
    <meta name="generator" content="docfx 2.24.0.0">
    
    <link rel="shortcut icon" href="../images/favicon.ico">
    <link rel="stylesheet" href="../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../styles/docfx.css">
    <link rel="stylesheet" href="../styles/main.css">
    <meta property="docfx:navrel" content="../toc.html">
    <meta property="docfx:tocrel" content="toc.html">
    
    <meta property="docfx:rel" content="../">
    
  
<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>
  <body data-spy="scroll" data-target="#affix">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../index.html">
                <img id="logo" class="svg" src="../images/logo_ignite_32_32.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items"></div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Apache.Ignite.Core.Log.CategoryLogger">
  
  
  <h1 id="Apache_Ignite_Core_Log_CategoryLogger" data-uid="Apache.Ignite.Core.Log.CategoryLogger" class="text-break">Class CategoryLogger
  </h1>
  <div class="markdown level0 summary"><p>Wrapping logger with a predefined category.
<p>
When <a class="xref" href="Apache.Ignite.Core.Log.CategoryLogger.html#Apache_Ignite_Core_Log_CategoryLogger_Log_Apache_Ignite_Core_Log_LogLevel_System_String_System_Object___System_IFormatProvider_System_String_System_String_System_Exception_">Log(LogLevel, String, Object[], IFormatProvider, String, String, Exception)</a> method is called, and <code>category</code> parameter is null, predefined category 
will be used.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">CategoryLogger</span></div>
  </div>
  <div classs="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="Apache.Ignite.Core.Log.ILogger.html">ILogger</a></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Apache.Ignite.Core.Log.html">Apache.Ignite.Core.Log</a></h6>
  <h6><strong>Assembly</strong>: Apache.Ignite.Core.dll</h6>
  <h5 id="Apache_Ignite_Core_Log_CategoryLogger_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class CategoryLogger : ILogger</code></pre>
  </div>
  <h3 id="constructors">Constructors
  </h3>
  <a id="Apache_Ignite_Core_Log_CategoryLogger__ctor_" data-uid="Apache.Ignite.Core.Log.CategoryLogger.#ctor*"></a>
  <h4 id="Apache_Ignite_Core_Log_CategoryLogger__ctor_Apache_Ignite_Core_Log_ILogger_System_String_" data-uid="Apache.Ignite.Core.Log.CategoryLogger.#ctor(Apache.Ignite.Core.Log.ILogger,System.String)">CategoryLogger(ILogger, String)</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="Apache.Ignite.Core.Log.CategoryLogger.html">CategoryLogger</a> class.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CategoryLogger(ILogger logger, string category)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Log.ILogger.html">ILogger</a></td>
        <td><span class="parametername">logger</span></td>
        <td><p>The logger to wrap.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">category</span></td>
        <td><p>The category.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
  </h3>
  <a id="Apache_Ignite_Core_Log_CategoryLogger_IsEnabled_" data-uid="Apache.Ignite.Core.Log.CategoryLogger.IsEnabled*"></a>
  <h4 id="Apache_Ignite_Core_Log_CategoryLogger_IsEnabled_Apache_Ignite_Core_Log_LogLevel_" data-uid="Apache.Ignite.Core.Log.CategoryLogger.IsEnabled(Apache.Ignite.Core.Log.LogLevel)">IsEnabled(LogLevel)</h4>
  <div class="markdown level1 summary"><p>Determines whether the specified log level is enabled.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool IsEnabled(LogLevel level)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Log.LogLevel.html">LogLevel</a></td>
        <td><span class="parametername">level</span></td>
        <td><p>The level.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p>Value indicating whether the specified log level is enabled</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Log_CategoryLogger_Log_" data-uid="Apache.Ignite.Core.Log.CategoryLogger.Log*"></a>
  <h4 id="Apache_Ignite_Core_Log_CategoryLogger_Log_Apache_Ignite_Core_Log_LogLevel_System_String_System_Object___System_IFormatProvider_System_String_System_String_System_Exception_" data-uid="Apache.Ignite.Core.Log.CategoryLogger.Log(Apache.Ignite.Core.Log.LogLevel,System.String,System.Object[],System.IFormatProvider,System.String,System.String,System.Exception)">Log(LogLevel, String, Object[], IFormatProvider, String, String, Exception)</h4>
  <div class="markdown level1 summary"><p>Logs the specified message.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public void Log(LogLevel level, string message, object[] args, IFormatProvider formatProvider, string category, string nativeErrorInfo, Exception ex)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Log.LogLevel.html">LogLevel</a></td>
        <td><span class="parametername">level</span></td>
        <td><p>The level.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">message</span></td>
        <td><p>The message.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Object</span>[]</td>
        <td><span class="parametername">args</span></td>
        <td><p>The arguments to format <code data-dev-comment-type="paramref" class="paramref">message</code>.
Can be null (formatting will not occur).</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.IFormatProvider</span></td>
        <td><span class="parametername">formatProvider</span></td>
        <td><p>The format provider. Can be null if <code data-dev-comment-type="paramref" class="paramref">args</code> is null.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">category</span></td>
        <td><p>The logging category name.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">nativeErrorInfo</span></td>
        <td><p>The native error information.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Exception</span></td>
        <td><span class="parametername">ex</span></td>
        <td><p>The exception. Can be null.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="implements">Implements</h3>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.ILogger.html">ILogger</a>
  </div>
  <h3 id="extensionmethods">Extension Methods</h3>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Trace_Apache_Ignite_Core_Log_ILogger_System_String_">LoggerExtensions.Trace(ILogger, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Trace_Apache_Ignite_Core_Log_ILogger_System_String_System_Object___">LoggerExtensions.Trace(ILogger, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Trace_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_">LoggerExtensions.Trace(ILogger, Exception, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Trace_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_System_Object___">LoggerExtensions.Trace(ILogger, Exception, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Debug_Apache_Ignite_Core_Log_ILogger_System_String_">LoggerExtensions.Debug(ILogger, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Debug_Apache_Ignite_Core_Log_ILogger_System_String_System_Object___">LoggerExtensions.Debug(ILogger, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Debug_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_">LoggerExtensions.Debug(ILogger, Exception, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Debug_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_System_Object___">LoggerExtensions.Debug(ILogger, Exception, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Info_Apache_Ignite_Core_Log_ILogger_System_String_">LoggerExtensions.Info(ILogger, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Info_Apache_Ignite_Core_Log_ILogger_System_String_System_Object___">LoggerExtensions.Info(ILogger, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Info_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_">LoggerExtensions.Info(ILogger, Exception, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Info_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_System_Object___">LoggerExtensions.Info(ILogger, Exception, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Warn_Apache_Ignite_Core_Log_ILogger_System_String_">LoggerExtensions.Warn(ILogger, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Warn_Apache_Ignite_Core_Log_ILogger_System_String_System_Object___">LoggerExtensions.Warn(ILogger, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Warn_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_">LoggerExtensions.Warn(ILogger, Exception, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Warn_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_System_Object___">LoggerExtensions.Warn(ILogger, Exception, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Error_Apache_Ignite_Core_Log_ILogger_System_String_">LoggerExtensions.Error(ILogger, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Error_Apache_Ignite_Core_Log_ILogger_System_String_System_Object___">LoggerExtensions.Error(ILogger, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Error_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_">LoggerExtensions.Error(ILogger, Exception, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Error_Apache_Ignite_Core_Log_ILogger_System_Exception_System_String_System_Object___">LoggerExtensions.Error(ILogger, Exception, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Log_Apache_Ignite_Core_Log_ILogger_Apache_Ignite_Core_Log_LogLevel_System_String_">LoggerExtensions.Log(ILogger, LogLevel, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Log_Apache_Ignite_Core_Log_ILogger_Apache_Ignite_Core_Log_LogLevel_System_String_System_Object___">LoggerExtensions.Log(ILogger, LogLevel, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Log_Apache_Ignite_Core_Log_ILogger_Apache_Ignite_Core_Log_LogLevel_System_Exception_System_String_">LoggerExtensions.Log(ILogger, LogLevel, Exception, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_Log_Apache_Ignite_Core_Log_ILogger_Apache_Ignite_Core_Log_LogLevel_System_Exception_System_String_System_Object___">LoggerExtensions.Log(ILogger, LogLevel, Exception, String, Object[])</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_GetLogger_Apache_Ignite_Core_Log_ILogger_System_String_">LoggerExtensions.GetLogger(ILogger, String)</a>
  </div>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Log.LoggerExtensions.html#Apache_Ignite_Core_Log_LoggerExtensions_GetLogger_Apache_Ignite_Core_Log_ILogger_System_Type_">LoggerExtensions.GetLogger(ILogger, Type)</a>
  </div>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            © 2015 - 2019 The Apache Software Foundation
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../styles/docfx.js"></script>
    <script type="text/javascript" src="../styles/main.js"></script>
  </body>
</html>
