Log4 cpp: печать даты в часовом поясе UTC / GMT - PullRequest
0 голосов
/ 11 июля 2020

Я работаю с log4 cpp. Есть ли способ распечатать временные метки / даты в log4 cpp, преобразованные в GMT / UT C часовой пояс?

На данный момент я использую% d, который в настоящее время распечатывает местное время, однако я хочу это в UTC / GMT.

1 Ответ

0 голосов
/ 12 июля 2020

Согласно эта старая ветка , поддержки нет:

ankit tandon пишет:

Привет всем, в настоящее время есть какой-либо способ для печати меток времени / даты в log4cpp, преобразованных в часовой пояс GMT / UT C. Я где-то читал, что использование "% d" выводит дату в формате UT C, но мы все еще получаем время нашей местной системы (США). Мы будем очень благодарны за любую помощь по этому поводу.

Нет, нет возможности распечатать UT C время с помощью PatternLayout. Но вы можете написать свой собственный аппендер, который будет печатать UT C timestamps / date.

Это расходится с документацией , утверждающей, что% d печатает UT C, и % D по местному времени.

Итак, я проверил код в log4 cpp -1.1.3.tar.gz на предмет достоверности. Похоже, это всегда localtime:

std::time_t t = event.timeStamp.getSeconds();
localtime(&t, &currentTime);

Возможно, вы могли бы просто исправить эту строку, чтобы вместо нее использовать gmtime.

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