Dreamine.Logging
1.0.2
Dreamine.Logging 프로젝트의 API와 구성 요소를 제공합니다.
Toggle main menu visibility
로딩중...
검색중...
일치하는것 없음
DreamineLogger.cs
이 파일의 문서화 페이지로 가기
1
using
System;
2
using
Dreamine.Logging.Interfaces
;
3
using
Dreamine.Logging.Models
;
4
5
namespace
Dreamine.Logging.Services
;
6
15
public
sealed
class
DreamineLogger
:
IDreamineLogger
16
{
25
private
readonly IReadOnlyList<IDreamineLogSink>
_sinks
;
34
private
readonly
DreamineLogLevel
_minimumLevel
;
43
private
readonly
string
_category
;
44
61
public
DreamineLogger
(
IDreamineLogSink
sink)
62
: this(new[] { sink },
DreamineLogLevel
.Trace,
"Dreamine"
)
63
{
64
}
65
90
public
DreamineLogger
(
IDreamineLogSink
sink,
string
category)
91
: this(new[] { sink },
DreamineLogLevel
.Trace, category)
92
{
93
}
94
135
public
DreamineLogger
(
136
IDreamineLogSink
sink,
137
DreamineLogLevel
minimumLevel,
138
string
category)
139
: this(new[] { sink }, minimumLevel, category)
140
{
141
}
142
191
public
DreamineLogger
(
192
IEnumerable<IDreamineLogSink> sinks,
193
DreamineLogLevel
minimumLevel =
DreamineLogLevel
.Trace,
194
string
category =
"Dreamine"
)
195
{
196
if
(sinks is
null
)
197
{
198
throw
new
ArgumentNullException(nameof(sinks));
199
}
200
201
_sinks
= sinks.ToArray();
202
203
if
(
_sinks
.Count == 0)
204
{
205
throw
new
ArgumentException(
"At least one log sink is required."
, nameof(sinks));
206
}
207
208
_minimumLevel
= minimumLevel;
209
_category
=
string
.IsNullOrWhiteSpace(category) ?
"Dreamine"
: category;
210
}
211
228
public
void
Trace
(
string
message) =>
Write
(
DreamineLogLevel
.Trace, message,
null
);
229
246
public
void
Debug
(
string
message) =>
Write
(
DreamineLogLevel
.Debug, message,
null
);
247
264
public
void
Info
(
string
message) =>
Write
(
DreamineLogLevel
.Info, message,
null
);
265
282
public
void
Warning
(
string
message) =>
Write
(
DreamineLogLevel
.Warning, message,
null
);
283
300
public
void
Error
(
string
message) =>
Write
(
DreamineLogLevel
.Error, message,
null
);
301
326
public
void
Error
(Exception exception,
string
message) =>
Write
(
DreamineLogLevel
.Error, message, exception);
327
344
public
void
Fatal
(
string
message) =>
Write
(
DreamineLogLevel
.Fatal, message,
null
);
345
370
public
void
Fatal
(Exception exception,
string
message) =>
Write
(
DreamineLogLevel
.Fatal, message, exception);
371
396
public
void
Write
(
DreamineLogEntry
entry)
397
{
398
if
(entry is
null
)
399
{
400
throw
new
ArgumentNullException(nameof(entry));
401
}
402
403
if
(entry.
Level
<
_minimumLevel
)
404
{
405
return
;
406
}
407
408
foreach
(var sink
in
_sinks
)
409
{
410
try
411
{
412
sink.Write(entry);
413
}
414
catch
415
{
416
// Logging failure must not terminate the application.
417
}
418
}
419
}
420
453
private
void
Write
(
DreamineLogLevel
level,
string
message, Exception? exception)
454
{
455
var entry =
new
DreamineLogEntry
(
456
DateTimeOffset.Now,
457
level,
458
_category
,
459
message,
460
exception,
461
Environment.CurrentManagedThreadId);
462
463
Write
(entry);
464
}
465
}
Dreamine.Logging.Interfaces
Definition
IDreamineLogFormatter.cs:3
Dreamine.Logging.Models
Definition
DreamineLogEntry.cs:3
Dreamine.Logging.Models.DreamineLogLevel
DreamineLogLevel
Definition
DreamineLogLevel.cs:12
Dreamine.Logging.Services
Definition
DreamineLogger.cs:5
Dreamine.Logging.Interfaces.IDreamineLogger
Definition
IDreamineLogger.cs:14
Dreamine.Logging.Interfaces.IDreamineLogSink
Definition
IDreamineLogSink.cs:14
Dreamine.Logging.Models.DreamineLogEntry
Definition
DreamineLogEntry.cs:14
Dreamine.Logging.Models.DreamineLogEntry.Level
DreamineLogLevel Level
Definition
DreamineLogEntry.cs:33
Dreamine.Logging.Services.DreamineLogger.Fatal
void Fatal(Exception exception, string message)
Definition
DreamineLogger.cs:370
Dreamine.Logging.Services.DreamineLogger.Info
void Info(string message)
Definition
DreamineLogger.cs:264
Dreamine.Logging.Services.DreamineLogger.DreamineLogger
DreamineLogger(IDreamineLogSink sink, string category)
Definition
DreamineLogger.cs:90
Dreamine.Logging.Services.DreamineLogger.Fatal
void Fatal(string message)
Definition
DreamineLogger.cs:344
Dreamine.Logging.Services.DreamineLogger.DreamineLogger
DreamineLogger(IDreamineLogSink sink, DreamineLogLevel minimumLevel, string category)
Definition
DreamineLogger.cs:135
Dreamine.Logging.Services.DreamineLogger.Warning
void Warning(string message)
Definition
DreamineLogger.cs:282
Dreamine.Logging.Services.DreamineLogger.DreamineLogger
DreamineLogger(IEnumerable< IDreamineLogSink > sinks, DreamineLogLevel minimumLevel=DreamineLogLevel.Trace, string category="Dreamine")
Definition
DreamineLogger.cs:191
Dreamine.Logging.Services.DreamineLogger._sinks
readonly IReadOnlyList< IDreamineLogSink > _sinks
Definition
DreamineLogger.cs:25
Dreamine.Logging.Services.DreamineLogger.Error
void Error(string message)
Definition
DreamineLogger.cs:300
Dreamine.Logging.Services.DreamineLogger.Debug
void Debug(string message)
Definition
DreamineLogger.cs:246
Dreamine.Logging.Services.DreamineLogger.DreamineLogger
DreamineLogger(IDreamineLogSink sink)
Definition
DreamineLogger.cs:61
Dreamine.Logging.Services.DreamineLogger.Error
void Error(Exception exception, string message)
Definition
DreamineLogger.cs:326
Dreamine.Logging.Services.DreamineLogger.Write
void Write(DreamineLogLevel level, string message, Exception? exception)
Definition
DreamineLogger.cs:453
Dreamine.Logging.Services.DreamineLogger.Write
void Write(DreamineLogEntry entry)
Definition
DreamineLogger.cs:396
Dreamine.Logging.Services.DreamineLogger._minimumLevel
readonly DreamineLogLevel _minimumLevel
Definition
DreamineLogger.cs:34
Dreamine.Logging.Services.DreamineLogger._category
readonly string _category
Definition
DreamineLogger.cs:43
Dreamine.Logging.Services.DreamineLogger.Trace
void Trace(string message)
Definition
DreamineLogger.cs:228
Services
DreamineLogger.cs
다음에 의해 생성됨 :
1.17.0