whylogs.core.resolvers#

Module Contents#

Classes#

Resolver

A resolver maps from a column name and a data type to trackers.

StandardResolver

Standard metric resolution with builtin types.

LimitedTrackingResolver

Resolver that skips frequent item and cardinality trackers.

HistogramCountingTrackingResolver

Resolver that only adds distribution tracker.

MetricSpec

Specify a Metric to instantiate.

ResolverSpec

Specify the metrics to instantiate for matching columns. column_name

DeclarativeResolverBase

Implements the declarative resolution logic by interpreting a "program"

DeclarativeResolver

Implements the declarative resolution logic by interpreting a "program"

Attributes#

whylogs.core.resolvers.logger#
whylogs.core.resolvers.M#
whylogs.core.resolvers.ColumnSchema: typing_extensions.TypeAlias = 'ColumnSchema'#
class whylogs.core.resolvers.Resolver#

Bases: abc.ABC

A resolver maps from a column name and a data type to trackers.

Note that the key of the result dictionaries defines the namespaces of the metrics in the serialized form.

abstract resolve(name: str, why_type: whylogs.core.datatypes.DataType, column_schema: ColumnSchema) Dict[str, whylogs.core.metrics.metrics.Metric]#
Parameters
Return type

Dict[str, whylogs.core.metrics.metrics.Metric]

class whylogs.core.resolvers.StandardResolver#

Bases: Resolver

Standard metric resolution with builtin types.

resolve(name: str, why_type: whylogs.core.datatypes.DataType, column_schema: ColumnSchema) Dict[str, whylogs.core.metrics.metrics.Metric]#
Parameters
Return type

Dict[str, whylogs.core.metrics.metrics.Metric]

class whylogs.core.resolvers.LimitedTrackingResolver#

Bases: Resolver

Resolver that skips frequent item and cardinality trackers.

resolve(name: str, why_type: whylogs.core.datatypes.DataType, column_schema: ColumnSchema) Dict[str, whylogs.core.metrics.metrics.Metric]#
Parameters
Return type

Dict[str, whylogs.core.metrics.metrics.Metric]

class whylogs.core.resolvers.HistogramCountingTrackingResolver#

Bases: Resolver

Resolver that only adds distribution tracker.

resolve(name: str, why_type: whylogs.core.datatypes.DataType, column_schema: ColumnSchema) Dict[str, whylogs.core.metrics.metrics.Metric]#
Parameters
Return type

Dict[str, whylogs.core.metrics.metrics.Metric]

class whylogs.core.resolvers.MetricSpec#

Specify a Metric to instantiate.

metric: Any#
config: Optional[whylogs.core.metrics.metrics.MetricConfig]#
class whylogs.core.resolvers.ResolverSpec#

Specify the metrics to instantiate for matching columns. column_name takes precedence over column_type. column_type should be a subclass of DataType, i.e., AnyType, Frational, Integral, or String. Pass the class, not an instance. If the exclude field is True, the listed metrics will be excluded from any matched columns.

column_name: Optional[str]#
column_type: Optional[Type]#
metrics: List[MetricSpec]#
exclude: bool = False#
type_mapper: whylogs.core.datatypes.TypeMapper#
whylogs.core.resolvers.COLUMN_METRICS#
class whylogs.core.resolvers.DeclarativeResolverBase(resolvers: List[ResolverSpec], default_config: Optional[whylogs.core.metrics.metrics.MetricConfig] = None)#

Bases: Resolver

Implements the declarative resolution logic by interpreting a “program” of ResolverSpecs

Parameters
abstract resolve(name: str, why_type: whylogs.core.datatypes.DataType, column_schema: ColumnSchema) Dict[str, whylogs.core.metrics.metrics.Metric]#
Parameters
Return type

Dict[str, whylogs.core.metrics.metrics.Metric]

whylogs.core.resolvers.STANDARD_RESOLVER#
whylogs.core.resolvers.NO_FI_RESOLVER#
whylogs.core.resolvers.LIMITED_TRACKING_RESOLVER#
whylogs.core.resolvers.HISTOGRAM_COUNTING_TRACKING_RESOLVER#
whylogs.core.resolvers.DEFAULT_RESOLVER: List[ResolverSpec]#
class whylogs.core.resolvers.DeclarativeResolver(resolvers: Optional[List[ResolverSpec]] = None, default_config: Optional[whylogs.core.metrics.metrics.MetricConfig] = None)#

Bases: DeclarativeResolverBase

Implements the declarative resolution logic by interpreting a “program” of ResolverSpecs

Parameters
add_resolver(resolver_spec: ResolverSpec)#
Parameters

resolver_spec (ResolverSpec) –

resolve(name: str, why_type: whylogs.core.datatypes.DataType, column_schema: ColumnSchema) Dict[str, whylogs.core.metrics.metrics.Metric]#
Parameters
Return type

Dict[str, whylogs.core.metrics.metrics.Metric]