GitHub user markgrover opened a pull request:

    https://github.com/apache/spark/pull/14270

    [SPARK-5847][CORE] Allow for configuring MetricsSystem's use of app ID to 
namespace all metrics

    ## What changes were proposed in this pull request?
    Adding a new property to SparkConf called spark.metrics.namespace that 
allows users to
    set a custom namespace for executor and driver metrics in the metrics 
systems.
    
    By default, the root namespace used for driver or executor metrics is
    the value of `spark.app.id`. However, often times, users want to be able to 
track the metrics
    across apps for driver and executor metrics, which is hard to do with 
application ID
    (i.e. `spark.app.id`) since it changes with every invocation of the app. 
For such use cases,
    users can set the `spark.metrics.namespace` property to another spark 
configuration key like
    `spark.app.name` which is then used to populate the root namespace of the 
metrics system
    (with the app name in our example). `spark.metrics.namespace` property can 
be set to any
    arbitrary spark property key, whose value would be used to set the root 
namespace of the
    metrics system. Non driver and executor metrics are never prefixed with 
`spark.app.id`, nor
    does the `spark.metrics.namespace` property have any such affect on such 
metrics.
    
    
    ## How was this patch tested?
    Added new unit tests, modified existing unit tests.


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/markgrover/spark spark-5847

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/spark/pull/14270.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #14270
    
----
commit 7d023c820cae3b970e11b2278f6c2b3f3751cc3b
Author: Mark Grover <[email protected]>
Date:   2016-07-19T05:38:31Z

    [SPARK-5847][CORE] Allow for configuring MetricsSystem's use of app ID to 
namespace all metrics
    
    Adding a new property to SparkConf called spark.metrics.namespace that 
allows users to
    set a custom namespace for executor and driver metrics in the metrics 
systems.
    
    By default, the root namespace used for driver or executor metrics is
    the value of `spark.app.id`. However, often times, users want to be able to 
track the metrics
    across apps for driver and executor metrics, which is hard to do with 
application ID
    (i.e. `spark.app.id`) since it changes with every invocation of the app. 
For such use cases,
    users can set the `spark.metrics.namespace` property to another spark 
configuration key like
    `spark.app.name` which is then used to populate the root namespace of the 
metrics system
    (with the app name in our example). `spark.metrics.namespace` property can 
be set to any
    arbitrary spark property key, whose value would be used to set the root 
namespace of the
    metrics system. Non driver and executor metrics are never prefixed with 
`spark.app.id`, nor
    does the `spark.metrics.namespace` property have any such affect on such 
metrics.

commit 605e690eefe905fa52979dde16f04bd208c8b219
Author: Mark Grover <[email protected]>
Date:   2016-07-19T19:44:55Z

    Minor fixes based on self-reviewing

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to