pub struct AnalyticsExports {
pub directory: String,
pub window: Option<AnalyticsExportWindow>,
pub formats: Vec<AnalyticsExportFormat>,
}Expand description
Scheduled usage-report exports (DW-120, analytics.exports).
The exports worker ticks on the same background machinery as the
rollup cascade, closes each UTC calendar window of the configured
AnalyticsExportWindow kind once its data has settled, and
writes one file per configured format into directory (created on
demand; unwritable directories fail the run LOUD in the run record
and logs — never the dataplane). Parquet is deliberately NOT a v1
format: the arrow/parquet dependency weight is deferred (see the
DW-156 backlog issue).
Fields§
§directory: StringDirectory the export files are written into (created on demand if missing). One deterministic file per (window, format); a re-export of the same window overwrites it (idempotent output, the rollup recompute philosophy).
window: Option<AnalyticsExportWindow>The schedule/window kind (fixed UTC calendar windows). Default
daily (midnight-to-midnight UTC — aligned with the quota
daily budget’s window, so a daily statement’s quota column is
exactly that day’s counter).
formats: Vec<AnalyticsExportFormat>Output formats, a subset of csv/json; omitted or empty
means BOTH csv and json (the default). Validation rejects only
duplicates.
Trait Implementations§
Source§impl Clone for AnalyticsExports
impl Clone for AnalyticsExports
Source§fn clone(&self) -> AnalyticsExports
fn clone(&self) -> AnalyticsExports
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AnalyticsExports
impl Debug for AnalyticsExports
Source§impl<'de> Deserialize<'de> for AnalyticsExports
impl<'de> Deserialize<'de> for AnalyticsExports
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for AnalyticsExports
impl JsonSchema for AnalyticsExports
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for AnalyticsExports
impl PartialEq for AnalyticsExports
Source§impl Serialize for AnalyticsExports
impl Serialize for AnalyticsExports
impl StructuralPartialEq for AnalyticsExports
Auto Trait Implementations§
impl Freeze for AnalyticsExports
impl RefUnwindSafe for AnalyticsExports
impl Send for AnalyticsExports
impl Sync for AnalyticsExports
impl Unpin for AnalyticsExports
impl UnwindSafe for AnalyticsExports
Blanket Implementations§
§impl<T> AnyExt for T
impl<T> AnyExt for T
§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
T behind reference§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
T behind mutable reference§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
T behind Rc pointer§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
T behind Arc pointer§fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
T behind Box pointer§fn downcast_move<T>(this: Self) -> Option<T>
fn downcast_move<T>(this: Self) -> Option<T>
Self to T,
useful only in generic context as a workaround for specializationSource§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more