[
https://issues.apache.org/jira/browse/HADOOP-15230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17280172#comment-17280172
]
Hadoop QA commented on HADOOP-15230:
------------------------------------
| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Logfile || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m
0s{color} | {color:blue}{color} | {color:blue} Docker mode activated. {color} |
| {color:red}-1{color} | {color:red} patch {color} | {color:red} 0m 11s{color}
| {color:red}{color} | {color:red} HADOOP-15230 does not apply to trunk. Rebase
required? Wrong Branch? See https://wiki.apache.org/hadoop/HowToContribute for
help. {color} |
\\
\\
|| Subsystem || Report/Notes ||
| JIRA Issue | HADOOP-15230 |
| JIRA Patch URL |
https://issues.apache.org/jira/secure/attachment/12910948/HADOOP-15230.007.patch
|
| Console output |
https://ci-hadoop.apache.org/job/PreCommit-HADOOP-Build/153/console |
| versions | git=2.17.1 |
| Powered by | Apache Yetus 0.13.0-SNAPSHOT https://yetus.apache.org |
This message was automatically generated.
> org.apache.hadoop.metrics2.GraphiteSink is not implemented correctly
> --------------------------------------------------------------------
>
> Key: HADOOP-15230
> URL: https://issues.apache.org/jira/browse/HADOOP-15230
> Project: Hadoop Common
> Issue Type: Bug
> Components: metrics
> Reporter: Howard Yoo
> Assignee: Howard Yoo
> Priority: Major
> Labels: GraphiteSink,, metrics, pull-request-available
> Attachments: HADOOP-15230.007.patch
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> org.apache.hadoop.metrics2.GraphiteSink's implementation has certain problems
> that would make it to generate metrics incorrectly.
> The problem lies with line 77 ~ 84 of the GraphiteSink java:
> {code:java}
> for (MetricsTag tag : record.tags()) {
> if (tag.value() != null) {
> metricsPathPrefix.append(".");
> metricsPathPrefix.append(tag.name());
> metricsPathPrefix.append("=");
> metricsPathPrefix.append(tag.value());
> }
> }
> {code}
> It produces point tags having name=value pair in the metrics. However, notice
> how the tags are added with '.' as its delimiters. Rather than using the '.'
> character, it should follow the following convention mentioned in the latest
> graphite doc of using ';' character.
> [http://graphite.readthedocs.io/en/latest/tags.html]
> Also, the value is not properly being escaped, meaning that if the value has
> a '.' character in it, it will easily confuse Graphite to accept it as a
> delimiter, rather than the value. A really good prime example is when the
> value is a hostname or ip address,
> {code:java}
> metrics.example.Hostname=this.is.a.hostname.and.this.is.Metrics 10.0{code}
> In this example, the since the value of the hostname contains '.', it is
> extremely hard for the receiving end to determine which part is hostname and
> which part is the rest of the metrics name. A good strategy is to convert any
> '.' character in the value to be converted to other characters, such as '_'.
> However, the best way would be to follow the latest metrics convention of
> using ';'
> {code:java}
> metrics.example.and.this.is.Metrics;Hostname=this.is.a.hostname 10.0{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]