Tôi đang sử dụng Nlog để đăng nhập các chiến lược Ninjatrader của mình. Tôi muốn có thể thêm id chiến lược làm tiền tố cho tất cả thư nLog của mình để tôi có thể lọc các mục nhập liên quan đến từng tài khoản trên chiến lược riêng biệt.Thêm biến làm tiền tố cho tất cả thư nLog
fileTarget.Layout = "${longdate} ${callsite} ${level} ${event-context:item=MyValue} ${message}";`
Bố cục hiện tại của tôi như trên. Tôi đã cố gắng sử dụng bối cảnh sự kiện: mục nhưng không biết cách in mục ngữ cảnh cho tất cả thư.
tôi đã cố gắng như sau
Logger log = LogManager.GetCurrentClassLogger();
LogEventInfo theEvent = new LogEventInfo(NLog.LogLevel.Debug, "", this.Account.Name);
logger.Log(theEvent);
Nhưng nó đã kết thúc in chỉ có một phù hợp với các thông tin bối cảnh trên dòng đầu tiên Sim101 và không phải trên các dòng khác.
2012-11-26 15:09:47.9777 NinjaTrader.Strategy.LODHOD.OnStartUp Debug Sim101
2012-11-26 15:09:48.3996 NinjaTrader.Strategy.LODHOD.OnBarUpdate Trace BAR UPDATE
2012-11-26 15:09:49.7902 NinjaTrader.Strategy.LODHOD.EntryOrders Info PLACED ENTRY ORDERS
Làm cách nào để in Sim101 trên tất cả các dòng ghi?
đây là câu hỏi đầy đủ của tôi: Tôi có phải thêm sự kiện trước khi gọi hàm theo dõi mọi lúc không? Tôi thêm thuộc tính sự kiện và thực hiện một logger.info (theEvent), nó ngay lập tức in hậu tố cho nhật ký của tôi. cho ví dụ: 2012-11-28 14: 18: 52.3277 NinjaTrader.Strategy.LODHOD.OnStartUp Thông tin Nhật ký Sự kiện: Logger = '' Level = Thông báo Thông báo = 'd4d0d3849c2440f5b41de65d744ede61' SequenceID = 270 Tuy nhiên logger.info tiếp theo không chụp tài sản của tôi 2012-11-28 14: 18: 52.9996 NinjaTrader.Strategy.LODHOD.OnBarUpdate Info BAR UPDATE Mã mà tôi đã sử dụng ở đây. http://codeviewer.org/view/code:2c95 – junkone
và nhật ký tôi đã sử dụng ở đây. http://codeviewer.org/view/code:2c96 – junkone
Bạn không phải sử dụng lớp LogEventInfo để tạo thư và phương thức Đăng nhập để ghi nhật ký chúng. Thông thường, hầu hết mọi người không. Họ sử dụng các phương thức .Info, .Debug, .Trace, vv để viết mã đăng nhập của họ. Tôi sẽ thêm một số ví dụ cho câu trả lời của tôi. – wageoghe