# Microsoft.Extensions.Logging.Abstractions

``` diff
 namespace Microsoft.Extensions.Logging.Abstractions {
+    public abstract class BufferedLogRecord {
+        protected BufferedLogRecord();
+        public virtual ActivitySpanId? ActivitySpanId { get; }
+        public virtual ActivityTraceId? ActivityTraceId { get; }
+        public virtual IReadOnlyList<KeyValuePair<string, object?>> Attributes { get; }
+        public abstract EventId EventId { get; }
+        public virtual string Exception { get; }
+        public virtual string FormattedMessage { get; }
+        public abstract LogLevel LogLevel { get; }
+        public virtual int? ManagedThreadId { get; }
+        public virtual string MessageTemplate { get; }
+        public abstract DateTimeOffset Timestamp { get; }
+    }
+    public interface IBufferedLogger {
+        void LogRecords(IEnumerable<BufferedLogRecord> records);
+    }
 }
```

