Пример #1
0
        protected override async Task <LogWriteOperation> WriteAsyncCore(LogWriteContext context, LogEventInfo entry)
        {
            await EnsureInitialize();

            // cleanup
            await CheckCleanup();

            // ok...
            var conn    = GetConnection();
            var session = await GetSessionAsync(context.Environment);

            await conn.InsertAsync(LogEventInfoItem.GetForInsert(context, entry, session));

            // return...
            return(new LogWriteOperation(this, entry, true));
        }
Пример #2
0
        internal static LogEventInfoItem GetForInsert(LogWriteContext context, LogEventInfo info, SessionHeaderItem session)
        {
            var item = new LogEventInfoItem()
            {
                SessionId = session.SessionId,
                DateTimeUtc = info.TimeStamp.UtcDateTime,
                SequenceId = info.SequenceID,
                Level = info.Level,
                Logger = info.Logger,
                Message = info.Message
            };

            // if...
            if (info.Exception != null)
                item.SetException(info.Exception);

            // return...
            return item;
        }
Пример #3
0
        internal static LogEventInfoItem GetForInsert(LogWriteContext context, LogEventInfo info, SessionHeaderItem session)
        {
            var item = new LogEventInfoItem()
            {
                SessionId   = session.SessionId,
                DateTimeUtc = info.TimeStamp.UtcDateTime,
                SequenceId  = info.SequenceID,
                Level       = info.Level,
                Logger      = info.Logger,
                Message     = info.Message
            };

            // if...
            if (info.Exception != null)
            {
                item.SetException(info.Exception);
            }

            // return...
            return(item);
        }