Skip to content

Conversation

@mihir6692
Copy link

What changes were proposed in this pull request?

Two changes need to be done :

  1. Slf4jsink.scala
    Added class name for logging. (Reference : https://dropwizard.github.io/metrics/3.1.0/manual/core/#man-core-reporters-slf4j )

  2. log4j.properties.template
    Added log configuration in log4j.properties.template for in support of above changes.

How was this patch tested?

It is tested with manual testing. I build spark with make-distribution.sh and then tried few example job to print Metrics in log files.

@mihir6692 mihir6692 changed the title [SPARK-14754][CORE] Metrics as logs are not coming through slf4j [SPARK-14754][SPARK CORE] Metrics as logs are not coming through slf4j Apr 26, 2016
@AmplabJenkins
Copy link

Can one of the admins verify this patch?

MetricsSystem.checkMinimalPollingPeriod(pollUnit, pollPeriod)

val reporter: Slf4jReporter = Slf4jReporter.forRegistry(registry)
.outputTo(LoggerFactory.getLogger("org.apache.spark.metrics"))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not the class name for the logger name here, per your JIRA?

@mihir6692
Copy link
Author

I have added 2 more commits and updated the pull request.

Please have a look.
Thanks

MetricsSystem.checkMinimalPollingPeriod(pollUnit, pollPeriod)

val reporter: Slf4jReporter = Slf4jReporter.forRegistry(registry)
.outputTo(LoggerFactory.getLogger("org.apache.spark.metrics.sink.Slf4jSink"))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, it can be classOf[Slf4jSink].getName for simplicity and to avoid forgetting to update it if for some reason this moves.

Copy link
Author

@mihir6692 mihir6692 Apr 26, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For Slf4jSink.scala :-

Its not about class path or class level in package. It is just a name. Ex.
If you keep name like Spark.log4j, it would still work. ( and use the
same Spark.log4j in log4j.properties). So it won't matter even if we
move class to some other folder or package.

EDIT :-

I understood what you are trying to say. I will update it with new commit. Thanks for guidance.

@HyukjinKwon
Copy link
Member

gentle ping @mihir6692

1 similar comment
@HyukjinKwon
Copy link
Member

gentle ping @mihir6692

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants