pub trait MetricsLoggerProxyInterface: Send + Sync {
type StartLoggingResponseFut: Future<Output = Result<MetricsLoggerStartLoggingResult, Error>> + Send;
type StartLoggingForeverResponseFut: Future<Output = Result<MetricsLoggerStartLoggingForeverResult, Error>> + Send;
type StopLoggingResponseFut: Future<Output = Result<bool, Error>> + Send;
// Required methods
fn start_logging(
&self,
client_id: &str,
metrics: &[Metric],
duration_ms: u32,
output_samples_to_syslog: bool,
output_stats_to_syslog: bool
) -> Self::StartLoggingResponseFut;
fn start_logging_forever(
&self,
client_id: &str,
metrics: &[Metric],
output_samples_to_syslog: bool,
output_stats_to_syslog: bool
) -> Self::StartLoggingForeverResponseFut;
fn stop_logging(&self, client_id: &str) -> Self::StopLoggingResponseFut;
}