[
https://issues.apache.org/jira/browse/LOG4J2-1246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16696135#comment-16696135
]
Ralph Goers commented on LOG4J2-1246:
-------------------------------------
It appears to me that Remko wrote FixedDateFormat as an optimization. Since
none of the patterns that are defined in that class include a timezone I don't
think he included support for it. If a pattern is used that is not one of the
ones defined in the FixedFormat enum it looks like DatePatternConverter falls
back to the original code which does support a timezone.
As for what the value of the timezone data is, from what I understand it may be
in any of the following formats:
{code}
<time>Z
<time>±hh:mm
<time>±hhmm
<time>±hh
{code}
and it doesn't look like the user has much control over the format.
Also, I would suggest we should support all of the constants listed at
https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html.
> PatternLayout %date conversion pattern should render time zone designator for
> ISO-ISO8601
> -----------------------------------------------------------------------------------------
>
> Key: LOG4J2-1246
> URL: https://issues.apache.org/jira/browse/LOG4J2-1246
> Project: Log4j 2
> Issue Type: Bug
> Components: Pattern Converters
> Affects Versions: 2.4.1, 2.5
> Reporter: Daniel Marcotte
> Priority: Major
>
> Hi there!
> There might be a small issue with the Pattern Converters regarding Timezone
> management:
> http://logging.apache.org/log4j/2.x/manual/layouts.html#PatternLayout
> Right now, these patterns:
> * {{"%d\{ISO8601_BASIC\}}}
> * {{%d\{ISO8601_BASIC\}\{UTC\}}}
> Give the same results:
> * {{20160104T204256,048}}
> * {{20160104T204256,048}}
> However, with a deeper look at the ISO-8601 standards, the second one with
> {{"\{UTC\}"}} should properly add the Timezone at the end of the timestamp.
> Reference: https://en.wikipedia.org/wiki/ISO_8601#Times
> {quote}
> *UTC*
> If the time is in UTC, add a Z directly after the time without a space. Z is
> the zone designator for the zero UTC offset. "09:30 UTC" is therefore
> represented as "09:30Z" or "0930Z". "14:45:15 UTC" would be "14:45:15Z" or
> "144515Z".
> UTC time is also known as 'Zulu' time, since 'Zulu' is the NATO phonetic
> alphabet word for 'Z'.
> *Examples*
> <time>Z
> <time>±hh:mm
> <time>±hhmm
> <time>±hh
> {quote}
> As of ISO-8601, the results should be one of the following (configurable?):
> * {{20160104T204256,048Z}}
> * {{20160104T204256,048+00:00}}
> * {{20160104T204256,048+0000}}
> * {{20160104T204256,048+00}}
> Another reference:
> http://stackoverflow.com/questions/833102/wheres-the-datetime-z-format-specifier
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)