Show / Hide Table of Contents

Class LogService

Provides logging services by buffering messages and dispatching them into destinations. This is an asynchronous service, meaning that Write(msg) never blocks for long.

Inheritance
System.Object
DisposableObject
ApplicationComponent
Service
Service<System.Object>
ServiceWithInstrumentationBase<System.Object>
LogServiceBase
LogService
Implements
IService
INamed
ILogImplementation
ILog
IApplicationComponent
ILocalizedTimeProvider
System.IDisposable
IConfigurable
IInstrumentable
IExternallyParameterized
Inherited Members
LogServiceBase.Destructor()
LogServiceBase.m_Destinations
LogServiceBase.m_InstrumentationEnabled
LogServiceBase.ComponentCommonName
LogServiceBase.LastWarning
LogServiceBase.LastError
LogServiceBase.LastCatastrophy
LogServiceBase.Destinations
LogServiceBase.InstrumentationEnabled
LogServiceBase.InstrumentationBufferSize
LogServiceBase.DefaultFailover
LogServiceBase.FailoverErrorDestination
LogServiceBase.FailoverError
LogServiceBase.Now
LogServiceBase.DestinationsAreOptional
LogServiceBase.Write(MessageType, String, String, String)
LogServiceBase.Write(MessageType, String, Boolean, String, String)
LogServiceBase.Write(Message)
LogServiceBase.Write(Message, Boolean)
LogServiceBase.RegisterDestination(Destination, Int32)
LogServiceBase.UnRegisterDestination(Destination)
LogServiceBase.GetInstrumentationBuffer(Boolean)
LogServiceBase.DoConfigure(IConfigSectionNode)
LogServiceBase.Pulse()
ServiceWithInstrumentationBase<Object>.ExternalParameters
ServiceWithInstrumentationBase<Object>.ExternalParametersForGroups(String[])
ServiceWithInstrumentationBase<Object>.ExternalGetParameter(String, Object, String[])
ServiceWithInstrumentationBase<Object>.ExternalSetParameter(String, Object, String[])
Service<Object>.ComponentDirector
Service.CONFIG_NAME_ATTR
Service.ApplicationDontAutoStartService
Service.Status
Service.Running
Service.Name
Service.TimeLocation
Service.LocalizedTime
Service.Configure(IConfigSectionNode)
Service.Start()
Service.SignalStop()
Service.CheckForCompleteStop()
Service.WaitForCompleteStop()
Service.AcceptManagerVisit(Object, DateTime)
Service.UniversalTimeToLocalizedTime(DateTime)
Service.LocalizedTimeToUniversalTime(DateTime)
Service.AbortStart()
Service.DoSignalStop()
Service.DoCheckForCompleteStop()
Service.CheckServiceInactive()
Service.CheckServiceActive()
Service.CheckServiceActiveOrStarting()
Service.DoAcceptManagerVisit(Object, DateTime)
Service.____ObtainPrivateServiceStatusLockObject()
ApplicationComponent.AllComponents
ApplicationComponent.GetAppComponentBySID(UInt64)
ApplicationComponent.GetAppComponentByCommonName(String)
ApplicationComponent.ComponentSID
ApplicationComponent.ComponentStartTime
DisposableObject.DisposeAndNull<T>(T)
DisposableObject.DisposeStarted
DisposableObject.Disposed
DisposableObject.EnsureObjectNotDisposed()
DisposableObject.Dispose()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: NFX.Log
Assembly: NFX.dll
Syntax
[ConfigMacroContext]
public class LogService : LogServiceBase, IService, INamed, ILogImplementation, ILog, IApplicationComponent, ILocalizedTimeProvider, IDisposable, IConfigurable, IInstrumentable, IExternallyParameterized

Constructors

LogService()

Creates a new logging service instance

Declaration
public LogService()

LogService(Service)

Creates a new logging service instance

Declaration
public LogService(Service director = null)
Parameters
Type Name Description
Service director

Fields

CONFIG_FILEEXTENSION_ATTR

Declaration
public const string CONFIG_FILEEXTENSION_ATTR = "file-extension"
Field Value
Type Description
System.String

CONFIG_RELIABLE_ATTR

Declaration
public const string CONFIG_RELIABLE_ATTR = "reliable"
Field Value
Type Description
System.String

CONFIG_WRITEINTERVAL_ATTR

Declaration
public const string CONFIG_WRITEINTERVAL_ATTR = "write-interval-ms"
Field Value
Type Description
System.String

Properties

FileExtension

Extension for log files

Declaration
[Config("$file-extension")]
[ExternalParameter(new string[]{"log"})]
public string FileExtension { get; set; }
Property Value
Type Description
System.String

Reliable

Determines whether this service blocks on stop longer until all buffered messages have been tried to be dispatched into all destinations. This property is true by default. Certain destinations may take considerable time to fail per message (i.e. database connection timeout), consequently buffered messages processing may delay service stop significantly if this property is true

Declaration
[Config("$reliable", true)]
[ExternalParameter(new string[]{"log"})]
public bool Reliable { get; set; }
Property Value
Type Description
System.Boolean

WriteInterval

Determines how often a log should be written to storage. The value of this property must be between 10 and 5000 (milliseconds)

Declaration
[Config("$write-interval-ms", 250)]
[ExternalParameter(new string[]{"log"})]
public int WriteInterval { get; set; }
Property Value
Type Description
System.Int32

Methods

DoStart()

Declaration
protected override void DoStart()
Overrides
LogServiceBase.DoStart()

DoWaitForCompleteStop()

Declaration
protected override void DoWaitForCompleteStop()
Overrides
LogServiceBase.DoWaitForCompleteStop()

DoWrite(Message, Boolean)

Writes log message into log

Declaration
protected override void DoWrite(Message msg, bool urgent)
Parameters
Type Name Description
Message msg
System.Boolean urgent
Overrides
LogServiceBase.DoWrite(Message, Boolean)

Implements

IService
INamed
ILogImplementation
ILog
IApplicationComponent
ILocalizedTimeProvider
System.IDisposable
IConfigurable
IInstrumentable
IExternallyParameterized

Extension Methods

MiscUtils.NonNull<T>(T, Func<Exception>, String)
ObjectValueConversion.AsString(Object, String, ConvertErrorHandling)
ObjectValueConversion.AsNonNullOrEmptyString(Object)
ObjectValueConversion.AsLaconicConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsJSONConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsXMLConfig(Object, ConfigSectionNode, ConvertErrorHandling)
ObjectValueConversion.AsChar(Object, Char, ConvertErrorHandling)
ObjectValueConversion.AsNullableChar(Object, Nullable<Char>, ConvertErrorHandling)
ObjectValueConversion.AsByte(Object, Byte, ConvertErrorHandling)
ObjectValueConversion.AsNullableByte(Object, Nullable<Byte>, ConvertErrorHandling)
ObjectValueConversion.AsSByte(Object, SByte, ConvertErrorHandling)
ObjectValueConversion.AsNullableSByte(Object, Nullable<SByte>, ConvertErrorHandling)
ObjectValueConversion.AsShort(Object, Int16, ConvertErrorHandling)
ObjectValueConversion.AsNullableShort(Object, Nullable<Int16>, ConvertErrorHandling)
ObjectValueConversion.AsUShort(Object, UInt16, ConvertErrorHandling)
ObjectValueConversion.AsNullableUShort(Object, Nullable<UInt16>, ConvertErrorHandling)
ObjectValueConversion.AsInt(Object, Int32, ConvertErrorHandling)
ObjectValueConversion.AsNullableInt(Object, Nullable<Int32>, ConvertErrorHandling)
ObjectValueConversion.AsUInt(Object, UInt32, ConvertErrorHandling)
ObjectValueConversion.AsNullableUInt(Object, Nullable<UInt32>, ConvertErrorHandling)
ObjectValueConversion.AsLong(Object, Int64, ConvertErrorHandling)
ObjectValueConversion.AsNullableLong(Object, Nullable<Int64>, ConvertErrorHandling)
ObjectValueConversion.AsULong(Object, UInt64, ConvertErrorHandling)
ObjectValueConversion.AsNullableULong(Object, Nullable<UInt64>, ConvertErrorHandling)
ObjectValueConversion.AsDouble(Object, Double, ConvertErrorHandling)
ObjectValueConversion.AsNullableDouble(Object, Nullable<Double>, ConvertErrorHandling)
ObjectValueConversion.AsFloat(Object, Single, ConvertErrorHandling)
ObjectValueConversion.AsNullableFloat(Object, Nullable<Single>, ConvertErrorHandling)
ObjectValueConversion.AsDecimal(Object, Decimal, ConvertErrorHandling)
ObjectValueConversion.AsNullableDecimal(Object, Nullable<Decimal>, ConvertErrorHandling)
ObjectValueConversion.AsBool(Object, Boolean, ConvertErrorHandling)
ObjectValueConversion.AsNullableBool(Object, Nullable<Boolean>, ConvertErrorHandling)
ObjectValueConversion.AsGUID(Object, Guid, ConvertErrorHandling)
ObjectValueConversion.AsNullableGUID(Object, Nullable<Guid>, ConvertErrorHandling)
ObjectValueConversion.AsDateTime(Object)
ObjectValueConversion.AsDateTime(Object, DateTime, ConvertErrorHandling)
ObjectValueConversion.AsNullableDateTime(Object, Nullable<DateTime>, ConvertErrorHandling)
ObjectValueConversion.AsGDID(Object)
ObjectValueConversion.AsGDID(Object, GDID, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDID(Object, Nullable<GDID>, ConvertErrorHandling)
ObjectValueConversion.AsGDIDSymbol(Object)
ObjectValueConversion.AsGDIDSymbol(Object, GDIDSymbol, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDIDSymbol(Object, Nullable<GDIDSymbol>, ConvertErrorHandling)
ObjectValueConversion.AsTimeSpan(Object)
ObjectValueConversion.AsTimeSpan(Object, TimeSpan, ConvertErrorHandling)
ObjectValueConversion.AsNullableTimeSpan(Object, Nullable<TimeSpan>, ConvertErrorHandling)
ObjectValueConversion.AsEnum<TEnum>(Object, TEnum, ConvertErrorHandling)
ObjectValueConversion.AsNullableEnum<TEnum>(Object, Nullable<TEnum>, ConvertErrorHandling)
ObjectValueConversion.AsUri(Object, Uri, ConvertErrorHandling)
JSONExtensions.ToJSON(Object, JSONWritingOptions)
JSONExtensions.ToJSON(Object, TextWriter, JSONWritingOptions)
JSONExtensions.ToJSON(Object, Stream, JSONWritingOptions, Encoding)
ErlObject.ToErlObject(Object)
ErlObject.ToErlObject(Object, ErlTypeOrder, Boolean)
Back to top Copyright © 2006-2018 Agnicore Inc
Generated by DocFX