thinkharderdev opened a new issue, #2204:
URL: https://github.com/apache/arrow-datafusion/issues/2204

   **Is your feature request related to a problem or challenge? Please describe 
what you are trying to do.**
   A clear and concise description of what the problem is. Ex. I'm always 
frustrated when [...] 
   (This section helps Arrow developers understand the context and *why* for 
this feature, in addition to  the *what*)
   
   DataFusion has pretty robust support for gathering detailed execution 
metrics but those metrics are mostly lost when using Ballista (the 
`ExecutionPlan` metrics get logged to stdout but that's not really useful for 
monitoring). 
   
   We should have a mechanism to provide visibility into `ExecutionPlan` 
metrics from the ballista executors. Ideally this should be 
pluggable/extensible but perhaps with built-in support for exporting to 
prometheus since Ballista is meant to be "cloud native" (i.e. deployed on 
kubernetes :))
   
   **Describe the solution you'd like**
   A clear and concise description of what you want to happen.
   
   Add a trait to Ballista that might look something like:
   
   ```rust
   pub trait ExecutorMetricsCollector {
   
    pub fn record_stage(&self, plan: Arc<dyn ExecutionPlan>)
   
    // Maybe some other hooks for different metrics... TBD
   }
   ```
   
   Then `Executor` could take an `Arc<dyn ExecutorMetrics>` and pass record 
stage execution appropriately. The default implementation could do nothing (or 
we can make it an optional parameter in `Executor`) or depending on whether it 
is common enough of a deployment pattern, the default behavior could be to 
export the metrics through Prometheus in which case the executor could ship 
with an HTTP endpoint for prometheus metrics, probably enabled through a 
feature flag.
   
   
   **Describe alternatives you've considered**
   A clear and concise description of any alternative solutions or features 
you've considered.
   
   **Additional context**
   Add any other context or screenshots about the feature request here.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to