Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecate Serilog Configuration #221

Open
wants to merge 14 commits into
base: master
Choose a base branch
from
Binary file removed .DS_Store
Binary file not shown.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

# OS-specific files
.DS_Store

# User-specific files
*.suo
*.user
Expand Down
Binary file removed IPPDotNetDevKitCSV3/.DS_Store
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,13 @@ public class AdvancedLogger
/// <summary>
/// Gets or sets the Request logging mechanism.
/// </summary>
[System.Obsolete("Use Logger with TraceLogger or a custom implementation.")]
public RequestAdvancedLog RequestAdvancedLog { get; set; }



/// <summary>
/// Gets or sets the <see cref="IAdvancedLogger"/>.
/// </summary>
public IAdvancedLogger Logger { get; set; }
}
}

Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@ public IppConfiguration GetConfiguration()
ippConfig.AdvancedLogger = new AdvancedLogger
{

#pragma warning disable CS0618 // Type or member is obsolete
RequestAdvancedLog = new RequestAdvancedLog()
{
EnableSerilogRequestResponseLoggingForDebug = false,
Expand All @@ -105,6 +106,7 @@ public IppConfiguration GetConfiguration()
EnableSerilogRequestResponseLoggingForFile = false,
ServiceRequestLoggingLocationForFile = System.IO.Path.GetTempPath()
}
#pragma warning restore CS0618 // Type or member is obsolete
};

if (ippConfigurationSection == null)
Expand All @@ -115,11 +117,13 @@ public IppConfiguration GetConfiguration()
ippConfig.Logger = new Logger
{
CustomLogger = new TraceLogger(),
#pragma warning disable CS0618 // Type or member is obsolete
RequestLog = new RequestLog
{
EnableRequestResponseLogging = false,
ServiceRequestLoggingLocation = System.IO.Path.GetTempPath()
}
#pragma warning restore CS0618 // Type or member is obsolete
};

ippConfig.Message = new Message
Expand Down Expand Up @@ -160,6 +164,7 @@ public IppConfiguration GetConfiguration()
}

ippConfig.Logger = new Logger();
#pragma warning disable CS0618 // Type or member is obsolete
ippConfig.Logger.RequestLog = new RequestLog();
ippConfig.Logger.RequestLog.EnableRequestResponseLogging = ippConfigurationSection.Logger.RequestLog.EnableRequestResponseLogging;
if (string.IsNullOrEmpty(ippConfigurationSection.Logger.RequestLog.RequestResponseLoggingDirectory))
Expand All @@ -177,6 +182,7 @@ public IppConfiguration GetConfiguration()

ippConfig.Logger.RequestLog.ServiceRequestLoggingLocation = ippConfigurationSection.Logger.RequestLog.RequestResponseLoggingDirectory;
}
#pragma warning restore CS0618 // Type or member is obsolete

if (!string.IsNullOrEmpty(ippConfigurationSection.Logger.CustomLogger.Name) && !string.IsNullOrEmpty(ippConfigurationSection.Logger.CustomLogger.Type) && ippConfigurationSection.Logger.CustomLogger.Enable)
{
Expand Down Expand Up @@ -355,7 +361,8 @@ public IppConfiguration GetConfiguration()

ippConfig.AdvancedLogger = new AdvancedLogger
{


#pragma warning disable CS0618 // Type or member is obsolete
RequestAdvancedLog = new RequestAdvancedLog()
{
EnableSerilogRequestResponseLoggingForDebug = false,
Expand All @@ -364,17 +371,20 @@ public IppConfiguration GetConfiguration()
EnableSerilogRequestResponseLoggingForFile = false,
ServiceRequestLoggingLocationForFile = System.IO.Path.GetTempPath()
}
#pragma warning restore CS0618 // Type or member is obsolete
};


ippConfig.Logger = new Logger
{
CustomLogger = new TraceLogger(),
#pragma warning disable CS0618 // Type or member is obsolete
RequestLog = new RequestLog
{
EnableRequestResponseLogging = false,
ServiceRequestLoggingLocation = System.IO.Path.GetTempPath()
}
#pragma warning restore CS0618 // Type or member is obsolete
};

ippConfig.Message = new Message
Expand Down Expand Up @@ -481,6 +491,7 @@ public IppConfiguration GetConfiguration()

#endregion

#pragma warning disable CS0618 // Type or member is obsolete
if (!string.IsNullOrEmpty(serilogLoggerSettingsFile["LogDirectory"]) && Convert.ToBoolean(serilogLoggerSettingsFile["EnableLogs"]) == true)
{

Expand Down Expand Up @@ -517,6 +528,7 @@ public IppConfiguration GetConfiguration()
ippConfig.Logger.RequestLog.ServiceRequestLoggingLocation = loggerSettings["LogDirectory"];

}
#pragma warning disable CS0618 // Type or member is obsolete

if (!string.IsNullOrEmpty(customLoggerSettings["Name"]) && !string.IsNullOrEmpty(customLoggerSettings["Type"]) && Convert.ToBoolean(customLoggerSettings["Enable"]) == true)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ public class Logger
/// <summary>
/// Gets or sets the Request logging mechanism.
/// </summary>
[System.Obsolete("Use a logging framework with CustomLogger.")]
public RequestLog RequestLog { get; set; }

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,11 +44,13 @@ public MemoryConfigurationProvider(IppConfiguration cfg)
cfg.Logger = new Logger
{
CustomLogger = new TraceLogger(),
#pragma warning disable CS0618 // Type or member is obsolete
RequestLog = new RequestLog
{
EnableRequestResponseLogging = false,
ServiceRequestLoggingLocation = System.IO.Path.GetTempPath()
}
#pragma warning restore CS0618 // Type or member is obsolete
};
}

Expand All @@ -57,6 +59,7 @@ public MemoryConfigurationProvider(IppConfiguration cfg)
cfg.AdvancedLogger = new AdvancedLogger
{

#pragma warning disable CS0618 // Type or member is obsolete
RequestAdvancedLog = new RequestAdvancedLog()
{
EnableSerilogRequestResponseLoggingForDebug = false,
Expand All @@ -65,6 +68,7 @@ public MemoryConfigurationProvider(IppConfiguration cfg)
EnableSerilogRequestResponseLoggingForFile = false,
ServiceRequestLoggingLocationForFile = System.IO.Path.GetTempPath()
}
#pragma warning restore CS0618 // Type or member is obsolete
};
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ namespace Intuit.Ipp.Core.Configuration
/// <summary>
/// Contains properties used to indicate whether request and response messages are to be logged.
/// </summary>
[Obsolete("Serilog configuration for Advanced Logging deprecated.")]
public class RequestAdvancedLog
{
/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ namespace Intuit.Ipp.Core.Configuration
/// <summary>
/// Contains properties used to indicate whether request and response messages are to be logged.
/// </summary>
[Obsolete("Direct file logging is deprecated. Use a logging framework.")]
public class RequestLog
{
/// <summary>
Expand Down
20 changes: 15 additions & 5 deletions IPPDotNetDevKitCSV3/Code/Intuit.Ipp.Core/CoreHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,9 @@ public static class CoreHelper


/// <summary>
/// Gets or sets Serilog Request Logging.
/// Gets or sets Advanced Request Logger.
/// </summary>
internal static Diagnostics.AdvancedLogging AdvancedLogging;
internal static Diagnostics.IAdvancedLogger AdvancedLogging;

/// <summary>
/// Gets the serializer mechanism using the service context and the depending on the request and response.
Expand Down Expand Up @@ -158,6 +158,7 @@ public static ICompressor GetCompressor(ServiceContext serviceContext, bool isRe
/// </summary>
/// <param name="serviceContext">The serivce context object.</param>
/// <returns>Returns value which specifies the request response logging mechanism.</returns>
[Obsolete("Use IppConfiguration.AdvangedLogger")]
public static Rest.LogRequestsToDisk GetRequestLogging(ServiceContext serviceContext)
{
Rest.LogRequestsToDisk requestLogger;
Expand All @@ -179,13 +180,19 @@ public static Rest.LogRequestsToDisk GetRequestLogging(ServiceContext serviceCon


/// <summary>
/// Gets the Request Response Logging mechanism for advanced logging using serilog.
/// Gets the Request Response Logging mechanism for advanced logging.
/// </summary>
/// <param name="serviceContext">The serivce context object.</param>
/// <returns>Returns value which specifies the request response logging mechanism.</returns>
public static Diagnostics.AdvancedLogging GetAdvancedLogging(ServiceContext serviceContext)
public static Diagnostics.IAdvancedLogger GetAdvancedLogging(ServiceContext serviceContext)
{
Diagnostics.AdvancedLogging requestLogger;
var requestLogger = serviceContext.IppConfiguration?.AdvancedLogger?.Logger;
if (requestLogger != null)
{
return requestLogger;
}

#pragma warning disable CS0618 // Type or member is obsolete
if (serviceContext.IppConfiguration != null &&
serviceContext.IppConfiguration.AdvancedLogger != null &&
serviceContext.IppConfiguration.AdvancedLogger.RequestAdvancedLog != null)
Expand All @@ -210,6 +217,9 @@ public static Diagnostics.AdvancedLogging GetAdvancedLogging(ServiceContext serv
{
requestLogger = new Diagnostics.AdvancedLogging(enableSerilogRequestResponseLoggingForDebug: true, enableSerilogRequestResponseLoggingForTrace: true, enableSerilogRequestResponseLoggingForConsole: true, enableSerilogRequestResponseLoggingForFile: false, serviceRequestLoggingLocationForFile: null);
}
#pragma warning restore CS0618 // Type or member is obsolete

requestLogger.Log("Advanced Logging with Serilog is deprecated.");

return requestLogger;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -221,8 +221,11 @@ private void ExecAsyncRequestWithRetryPolicy(HttpWebRequest asyncRequest)
CoreHelper.AdvancedLogging.Log(allHeaders.GetKey(i) + "-" + allHeaders[i]);
}

#pragma warning disable CS0618 // Type or member is obsolete
// Log Request Body to a file
this.RequestLogging.LogPlatformRequests(" RequestUrl: " + request.RequestUri + ", Request Payload: " + this.requestBody, true);
#pragma warning restore CS0618 // Type or member is obsolete

// Log Request Body to Serilog
CoreHelper.AdvancedLogging.Log(" Request Payload: " + this.requestBody);

Expand Down Expand Up @@ -448,8 +451,12 @@ private AsyncCallCompletedEventArgs CreateEventArgsForRequest(IAsyncResult async
response_intuit_tid_header = response.Headers[i];
}
}

#pragma warning disable CS0618 // Type or member is obsolete
// Log the response to Disk.
this.RequestLogging.LogPlatformRequests(" Response Intuit_Tid header: " + response_intuit_tid_header + ", Response Payload: " + resultString, false);
#pragma warning restore CS0618 // Type or member is obsolete

// Log response to Serilog
CoreHelper.AdvancedLogging.Log(" Response Intuit_Tid header: " + response_intuit_tid_header + ", Response Payload: " + resultString);

Expand Down Expand Up @@ -577,8 +584,11 @@ private void GetRequestStreamCallback(IAsyncResult asynchronousResult)
{
HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState;

#pragma warning disable CS0618 // Type or member is obsolete
// Log Request Body to a file
this.RequestLogging.LogPlatformRequests(" RequestUrl: " + request.RequestUri + ", Request Payload: " + this.requestBody, true);
#pragma warning restore CS0618 // Type or member is obsolete

// Log Request Body to Serilog
CoreHelper.AdvancedLogging.Log(" RequestUrl: " + request.RequestUri + ", Request Payload: " + this.requestBody);
UTF8Encoding encoding = new UTF8Encoding();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,11 @@ internal IdsException ParseResponseAndThrowException(WebException webException,
response_intuit_tid_header = errorResponse.Headers[i];
}
}

#pragma warning disable CS0618 // Type or member is obsolete
//Log errorstring to disk
CoreHelper.GetRequestLogging(this.context).LogPlatformRequests(" Response Intuit_Tid header: " + response_intuit_tid_header + ", Response Payload: " + errorString, false);
#pragma warning restore CS0618 // Type or member is obsolete

//Log errorstring to Serilog
CoreHelper.AdvancedLogging.Log(" Response Intuit_Tid header: " + response_intuit_tid_header + ", Response Payload: " + errorString);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,11 @@ protected RestHandler(ServiceContext context)
this.ResponseCompressor = CoreHelper.GetCompressor(this.serviceContext, false);
this.RequestSerializer = CoreHelper.GetSerializer(this.serviceContext, true);
this.responseSerializer = CoreHelper.GetSerializer(this.serviceContext, false);

#pragma warning disable CS0618 // Type or member is obsolete
this.RequestLogging = CoreHelper.GetRequestLogging(this.serviceContext);
#pragma warning restore CS0618 // Type or member is obsolete

// this.AdvancedLogging = CoreHelper.GetAdvancedLogging(this.serviceContext);
}

Expand Down Expand Up @@ -97,6 +101,7 @@ protected RestHandler()
/// <summary>
/// Gets or sets Request Logging.
/// </summary>
[Obsolete("Use CoreHelper.AdvangedLogging")]
internal LogRequestsToDisk RequestLogging { get; set; }

///// <summary>
Expand Down Expand Up @@ -264,9 +269,11 @@ public virtual System.Net.HttpWebRequest PrepareRequest(RequestParameters reques
CoreHelper.AdvancedLogging.Log(allHeaders.GetKey(i) + "-" + allHeaders[i]);
}


#pragma warning disable CS0618 // Type or member is obsolete
// Log Request Body to a file
this.RequestLogging.LogPlatformRequests(" RequestUrl: " + requestEndpoint + ", Request Payload:" + requestXML.ToString(), true);
#pragma warning restore CS0618 // Type or member is obsolete

//Log to Serilog
CoreHelper.AdvancedLogging.Log( "Request Payload:" + requestXML.ToString());

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -379,7 +379,11 @@ private string ParseResponse(HttpWebResponse httpWebResponse)
response_intuit_tid_header = httpWebResponse.Headers[i];
}
}

#pragma warning disable CS0618 // Type or member is obsolete
this.RequestLogging.LogPlatformRequests(" Response Intuit_Tid header: " + response_intuit_tid_header + ", Response Payload: " + response, false);
#pragma warning restore CS0618 // Type or member is obsolete

//Log to Serilog
CoreHelper.AdvancedLogging.Log(" Response Intuit_Tid header: " + response_intuit_tid_header + ", Response Payload: " + response);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -409,9 +409,11 @@ public void ExecuteAction<TResult>(Action<AsyncCallback> beginAction, Func<IAsyn
}
}


#pragma warning disable CS0618 // Type or member is obsolete
// Log the error string to disk.
CoreHelper.GetRequestLogging(this.context).LogPlatformRequests(" Response Intuit_Tid header: " + response_intuit_tid_header + ", Response Payload: " + errorString, false);
#pragma warning restore CS0618 // Type or member is obsolete

//Log to Serilog
CoreHelper.AdvancedLogging.Log("Response Intuit_Tid header: " + response_intuit_tid_header + ",Response Payload: " + errorString);
}
Expand Down Expand Up @@ -627,8 +629,11 @@ private TResult ExecuteAction<TResult>(Func<TResult> func)
}
}

#pragma warning disable CS0618 // Type or member is obsolete
// Log the error string to disk.
CoreHelper.GetRequestLogging(this.context).LogPlatformRequests(" Response Intuit_Tid header: " + response_intuit_tid_header + " Response Payload: " + errorString, false);
#pragma warning restore CS0618 // Type or member is obsolete

//Log to Serilog
CoreHelper.AdvancedLogging.Log("Response Intuit_Tid header: " + response_intuit_tid_header + ", Response Payload: " + errorString);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,23 +34,14 @@ namespace Intuit.Ipp.Diagnostics
/// <summary>
/// Contains properties used to indicate whether request and response messages are to be logged.
/// </summary>
[Obsolete("Use TraceLogger or a custom implementation.")]
public class AdvancedLogging : IAdvancedLogger
{
/// <summary>
/// request logging location.
/// </summary>
private string serviceRequestLoggingLocationForFile;

/// <summary>
/// request Azure Document DB url.
/// </summary>
private Uri serviceRequestAzureDocumentDBUrl;

/// <summary>
/// request Azure Document DB Secure Key
/// </summary>
private string serviceRequestAzureDocumentDBSecureKey;

/// <summary>
/// request TTL-time to live for all logs
/// </summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,23 @@ public interface IAdvancedLogger
/// <param name="messageToWrite">The message to write.</param>
void Log(string messageToWrite);
}

/// <summary>
/// Null logger.
/// </summary>
public class NullAdvancedLogger : IAdvancedLogger
{
/// <summary>
/// Singleton instance of <see cref="NullAdvancedLogger"/>.
/// </summary>
public static readonly IAdvancedLogger Instance = new NullAdvancedLogger();

private NullAdvancedLogger()
{
}

void IAdvancedLogger.Log(string messageToWrite)
{
}
}
}
Loading