src/Services/Utilities/SaaSClientLogger.cs (56 lines of code) (raw):

// Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. See LICENSE file in the project root for license information. using System; using System.Web; using Marketplace.SaaS.Accelerator.Services.Services; using Microsoft.Extensions.Logging; using ILogger = Marketplace.SaaS.Accelerator.Services.Contracts.ILogger; namespace Marketplace.SaaS.Accelerator.Services.Utilities; /// <summary> /// Logger. /// </summary> /// <seealso cref="Microsoft.Marketplace.SaaS.SDK.Services.ILogger" /> public class SaaSClientLogger<T> : ILogger { /// <summary> /// The logger. /// </summary> private ILogger<T> logger; /// <summary> /// Initializes a new instance of the <see cref="SaaSClientLogger"/> class. /// </summary> public SaaSClientLogger() { var loggerFactory = LoggerFactory.Create(builder => { builder .AddConsole(); }); this.logger = loggerFactory.CreateLogger<T>(); } /// <summary> /// Log the message at Debug severity. /// </summary> /// <param name="message">The message.</param> public void Debug(string message) { this.logger.LogDebug(message); } /// <summary> /// Log the message at Debug severity. /// </summary> /// <param name="message">The message.</param> /// <param name="ex">The ex.</param> public void Debug(string message, Exception ex) { this.logger.LogDebug(ex, message); } /// <summary> /// Log the message at Error severity. /// </summary> /// <param name="message">The message.</param> public void Error(string message) { this.logger.LogError(message); } /// <summary> /// Log the message at Error severity. /// </summary> /// <param name="message">The message.</param> /// <param name="ex">The ex.</param> public void Error(string message, Exception ex) { this.logger.LogError(ex, message); } /// <summary> /// Log the message at Info severity. /// </summary> /// <param name="message">The message.</param> public void Info(string message) { this.logger.LogInformation(message); } /// <summary> /// Log the message at Info severity. /// </summary> /// <param name="message">The message.</param> /// <param name="ex">The ex.</param> public void Info(string message, Exception ex) { this.logger.LogInformation(ex, message); } /// <summary> /// Log the message at Warn severity. /// </summary> /// <param name="message">The message.</param> public void Warn(string message) { this.logger.LogWarning(message); } /// <summary> /// Log the message at Warn severity. /// </summary> /// <param name="message">The message.</param> /// <param name="ex">The ex.</param> public void Warn(string message, Exception ex) { this.logger.LogWarning(ex, message); } public void LogError(string message) { this.logger.LogError(message); } }