Время в логе
Atom
01.11.2012
PavelAd


Подскажите кто знает, почему при логировании в лог не выводятся миллисекунды при подгрузке исторических сделок

простой пример, вывод при закрытии свечи


protected void OnCandleFinished(Candle candle) {
this.AddInfoLog("'Бар {0}'. OP={1}, MAH={2}, MAL={3}", candle.OpenTime, candle.OpenPrice, candle.High, candle.Low);
var interval = this.GetMarketTime().Subtract(candle.OpenTime);
// Если условие не выполняется значит только что закрылась свеча, а не подгружены исторические данные
if (interval.TotalMilliseconds >= 30000) {
Thread.Sleep(100); // Чтобы в лог выводилось в нужном порядке
return;
}

}

В логе выводится все равно без милисекунд:

..... 10:42:21.000 | | TS_RIZ2@RTS_SPBFUT | 'Бар 01.11.2012 10:28:00'. OP=142370, MAH=142406.995801, MAL=142329.316113 10:42:21.000 | | TS_RIZ2@RTS_SPBFUT | 'Бар 01.11.2012 10:29:00'. OP=142560, MAH=142568.998600, MAL=142349.772038 10:42:21.000 | | TS_RIZ2@RTS_SPBFUT | 'Бар 01.11.2012 10:30:00'. OP=142550, MAH=142622.999533, MAL=142469.924013 ....

В MonitorWindow записи с одинаковым временем из-за этого вообще перепутываются


Теги:


Спасибо:


Геннадий Ванин (Gennady Vanin)

Фотография
Дата: 04.12.2012
Ответить


PavelAd: Подскажите кто знает, почему при логировании в лог не выводятся миллисекунды при подгрузке исторических сделок

простой пример, вывод при закрытии свечи

protected void OnCandleFinished(Candle candle) { this.AddInfoLog("'Бар {0}'. OP={1}, MAH={2}, MAL={3}", candle.OpenTime, candle.OpenPrice, candle.High, candle.Low); var interval = this.GetMarketTime().Subtract(candle.OpenTime); // Если условие не выполняется значит только что закрылась свеча, а не подгружены исторические данные if (interval.TotalMilliseconds >= 30000) { Thread.Sleep(100); // Чтобы в лог выводилось в нужном порядке return; }

}

> 
> В логе выводится все равно без милисекунд:
A смысл?
GetMarketTime() возвращает DateTime, у которого accuracy не лучше  10-15 миллисекунд

Если будете сортировать с такой точностью, то ещё больше запутаетесь
Спасибо:

VassilSanych

Фотография
Дата: 17.01.2013
Ответить


PavelAd: В логе выводится все равно без милисекунд Потому что форматирование стандартное. Попробуйте так: dateValue.ToString("MM.dd.yyyy hh:mm:ss.fff"));

Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy