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]