using System;
namespace Umbraco.Core.Logging
{
///
/// Provides extension methods for the interface.
///
public static class LoggerExtensions
{
///
/// Logs an error message
///
/// The reporting type.
/// The logger.
/// A message.
/// An exception.
public static void Error(this ILogger logger, Exception exception, string message)
{
logger.Error(typeof(T), exception, message);
}
///
/// Logs an error message with a structured message template
///
/// The reporting type
/// The logger.
/// A structured message template
/// An exception
/// Message property values
public static void Error(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues)
{
logger.Error(typeof(T), exception, messageTemplate, propertyValues);
}
///
/// Logs an error message NOTE: This will log an empty message string
///
/// The reporting type
/// The logger.
/// An exception
public static void Error(this ILogger logger, Exception exception)
{
logger.Error(typeof(T), exception);
}
///
/// Logs an error message WITHOUT EX
///
///
///
///
public static void Error(this ILogger logger, string message)
{
logger.Error(typeof(T), message);
}
///
/// Logs an error message - using a structured log message
///
/// The reporting type
/// The logger.
/// A structured message template
/// Message property values
public static void Error(this ILogger logger, string messageTemplate, params object[] propertyValues)
{
logger.Error(typeof(T), messageTemplate, propertyValues);
}
///
/// Logs a warning message.
///
/// The reporting type.
/// The logger.
/// A message.
public static void Warn(this ILogger logger, string message)
{
logger.Warn(typeof(T), message);
}
///
/// Logs a warning message with a structured message template
///
/// The reporting type
/// The logger.
/// A structured message template
/// Message property values
public static void Warn(this ILogger logger, string messageTemplate, params object[] propertyValues)
{
logger.Warn(typeof(T), messageTemplate, propertyValues);
}
///
/// Logs a formatted warning message with an exception.
///
/// The reporting type.
/// The logger.
/// An exception.
/// A message.
public static void Warn(this ILogger logger, Exception exception, string message)
{
logger.Warn(typeof(T), exception, message);
}
///
/// Logs a warning message with an exception with a structured message template
///
/// The reporting type
/// The logger.
/// An exception
/// A structured message template
/// Message property values
public static void Warn(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues)
{
logger.Warn(typeof(T), exception, messageTemplate, propertyValues);
}
///
/// Logs an information message.
///
/// The reporting type.
/// The logger.
/// A message.
public static void Info(this ILogger logger, string message)
{
logger.Info(typeof(T), message);
}
///
/// Logs a information message with a structured message template
///
/// The reporting type
/// The logger.
/// A structured message template
/// Message property values
public static void Info(this ILogger logger, string messageTemplate, params object[] propertyValues)
{
logger.Info(typeof(T), messageTemplate, propertyValues);
}
///
/// Logs a debugging message.
///
/// The reporting type.
/// The logger.
/// A message.
public static void Debug(this ILogger logger, string message)
{
logger.Debug(typeof(T), message);
}
///
/// Logs a debugging message with a structured message template
///
/// The reporting type
/// The logger.
/// A structured message template
/// Message property values
public static void Debug(this ILogger logger, string messageTemplate, params object[] propertyValues)
{
logger.Debug(typeof(T), messageTemplate, propertyValues);
}
///
/// Logs a verbose message.
///
/// The reporting type.
/// The logger.
/// A message.
public static void Verbose(this ILogger logger, string message)
{
logger.Verbose(typeof(T), message);
}
///
/// Logs a Verbose message with a structured message template
///
/// The reporting type
/// The logger.
/// A structured message template
/// Message property values
public static void Verbose(this ILogger logger, string messageTemplate, params object[] propertyValues)
{
logger.Verbose(typeof(T), messageTemplate, propertyValues);
}
///
/// Logs a fatal message.
///
/// The reporting type.
/// The logger.
/// An exception.
/// A message.
public static void Fatal(this ILogger logger, Exception exception, string message)
{
logger.Fatal(typeof(T), exception, message);
}
///
/// Logs a fatal message with a structured message template
///
/// The reporting type.
/// The logger.
/// An exception.
/// A structured message template
/// Message property values
public static void Fatal(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues)
{
logger.Fatal(typeof(T), exception, messageTemplate, propertyValues);
}
}
}