ETW를 사용 중입니다. 콘솔 로그를 실행 중입니다. 이벤트 소스를 인스턴스화하여 내 이벤트를 로그 파일에 기록하려고 시도하면 806/807 경고 코드로 인사되고 내 기록은 유지되지 않습니다. (이 경고는 'EventSource'속성을 추가했는지 여부에 관계없이 생성됩니다.ETW : 이벤트 소스 이름 설정 이벤트 ID 806/807
그러나 기본 생성자를 사용하고 이벤트 소스의 이름을 전달하지 않고 기본 속성 값을 사용하면 내 로그가 예상대로 생성됩니다.
경고예 구현 : 이상적으로
using Microsoft.Diagnostics.Tracing;
[EventSource(Name = "MyApi")]
public sealed class MyEventSource : EventSource
{
public MyEventSource(string name):base(name){
}
private static readonly Lazy<MyEventSource> _instance = new Lazy<MyEventSource>(() => new MyEventSource());
public static MyEventSource Log => _instance.Value;
...
}
, 나는 속성으로 내 EventSource 이름을 하드 코딩하고 간단하게 사용할 수있는 오버로드 된 생성자를 사용하여 생성자에 내 이름을 전달하는 것을 피하기하고 싶습니다
.3210이전 게시물의 유용한 정보를 찾았지만 불행히도 내 문제를 해결하지 못했습니다. Risk of missing events from ETW logging with EventSource
을 정의? 이 게으른 필요하지 않습니다, 단순히 사용 ** public static MyEventSource Log = new MyEventSource(); ** – magicandre1981