Show / Hide Table of Contents

    Interface IGraphLogger

    The logger interface used by Graph Services. This logger emits logs that can be observed by different observers.

    Inherited Members
    IObservable<LogEvent>.Subscribe(IObserver<LogEvent>)
    Namespace: Microsoft.Graph.Communications.Common.Telemetry
    Assembly: Microsoft.Graph.Communications.Common.dll
    Syntax
    public interface IGraphLogger : IObservable<LogEvent>

    Properties

    CorrelationId

    Gets or sets the correlation identifier. This is used to track correlation between multiple requests for one scenario.

    Declaration
    Guid CorrelationId { get; set; }
    Property Value
    Type Description
    Guid

    DiagnosticLevel

    Gets or sets the diagnostic level for the logger.

    Declaration
    TraceLevel DiagnosticLevel { get; set; }
    Property Value
    Type Description
    TraceLevel

    LogicalThreadId

    Gets or sets the logical thread identifier. This id is used for tracking the flow of one request throughout the lifetime until it ends.

    Declaration
    uint LogicalThreadId { get; set; }
    Property Value
    Type Description
    UInt32

    ObfuscationConfiguration

    Gets the obfuscation configuration. This is used to obfuscate PII and other data.

    Declaration
    ObfuscationConfiguration ObfuscationConfiguration { get; }
    Property Value
    Type Description
    ObfuscationConfiguration

    Properties

    Gets the properties of the logger.

    Declaration
    IReadOnlyDictionary<Type, object> Properties { get; }
    Property Value
    Type Description
    IReadOnlyDictionary<Type, Object>

    Methods

    Log(TraceLevel, String, String, Guid, Guid, LogEventType, IEnumerable<Object>, String, String, Int32)

    Log messages classified as the provided trace level.

    Declaration
    LogEvent Log(TraceLevel level, string message, string component = null, Guid correlationId = default(Guid), Guid requestId = default(Guid), LogEventType eventType = LogEventType.Trace, IEnumerable<object> properties = null, string memberName = null, string filePath = null, int lineNumber = 0)
    Parameters
    Type Name Description
    TraceLevel level

    The trace level.

    String message

    A composite format string that includes one or more format items.

    String component

    The component in which log is created

    Guid correlationId

    The correlation identifier.

    Guid requestId

    The request identifier.

    LogEventType eventType

    Log event type

    IEnumerable<Object> properties

    Extra properties for the log event

    String memberName

    Calling function.

    String filePath

    File name where code is located.

    Int32 lineNumber

    Line number where code is located.

    Returns
    Type Description
    LogEvent

    Log Event object.

    Extension Methods

    AdditionalDataExtensions.SetInAdditionalData(Object, String, Object)
    Extensions.Pin(Object)
    Extensions.ChangeType(Object, Type)
    Extensions.ChangeType<T>(Object)
    Extensions.CreateObserver<T>(IObservable<T>, Action<T>, Action<Exception>, Action)
    Extensions.TryDispose(Object, IGraphLogger)
    ReflectionUtils.GetPropertyUsingReflection(Object, String)
    ReflectionUtils.SetPropertyUsingReflection(Object, String, Object)
    Validator.IsNull(Object, String, String)
    Validator.NotNull<T>(T, String, String)
    Validator.Equals<T>(T, T, String, String)
    Validator.Equals<T, TE>(T, T, String)
    Validator.NotEquals<T>(T, T, String, String)
    LoggingExtensions.Log(IGraphLogger, TraceLevel, Exception, String, String, Guid, String, String, Int32)
    LoggingExtensions.Error(IGraphLogger, Exception, String, String, Guid, String, String, Int32)
    LoggingExtensions.Error(IGraphLogger, String, String, Guid, String, String, Int32)
    LoggingExtensions.Info(IGraphLogger, String, String, Guid, String, String, Int32)
    LoggingExtensions.Warn(IGraphLogger, Exception, String, String, Guid, String, String, Int32)
    LoggingExtensions.Warn(IGraphLogger, String, String, Guid, String, String, Int32)
    LoggingExtensions.Verbose(IGraphLogger, String, String, Guid, String, String, Int32)
    LoggingExtensions.LogHttpMessage(IGraphLogger, TraceLevel, TransactionDirection, HttpTraceType, String, String, String, IEnumerable<KeyValuePair<String, IEnumerable<String>>>, Int32, String, Nullable<Int64>, Guid, Guid, String, String, Int32)
    LoggingExtensions.Metric(IGraphLogger, String, String, Int64, Dictionary<String, String>, Boolean, String, Guid, String, String, Int32)
    LoggingExtensions.SerializeAndObfuscate(IGraphLogger, Object, Formatting)
    LoggingExtensions.Obfuscate(IGraphLogger, Object, ObfuscationTag)
    LoggingExtensions.GetHeaderText(IGraphLogger, IEnumerable<KeyValuePair<String, IEnumerable<String>>>)
    LoggingExtensions.CreateShim(IGraphLogger, String, Nullable<Guid>, IEnumerable<Object>, ObfuscationConfiguration)
    LoggingExtensions.CreateILogger(IGraphLogger, String, Guid, LogEventType, IEnumerable<Object>)
    LoggingExtensions.EnterMethod(IGraphLogger, Guid, String, String, Int32)
    LoggingExtensions.LeaveMethod(IGraphLogger, Guid, String, String, Int32)
    Back to top Copyright (c) Microsoft Corporation. All rights reserved.