Filter
Filter will filter the data based on the given criteria.
- class duetector.filters.base.Filter(config: Config | dict[str, Any] | None = None, *args, **kwargs)[source]
A base class for all filters.
Default config scope is
filter.{class_name}.subclass should override
filtermethod.User should call Filter() directly to filter data,
Example
from duetector.filters import Filter from collections import namedtuple class MyFilter(Filter): def filter(self, data: namedtuple) -> namedtuple | None: if data.fname == "/etc/passwd": return None return data f = MyFilter() data_t = namedtuple("Tracking", "fname") f(data_t(fname="/etc/passwd")) # None f(data_t(fname="/etc/shadow")) # Tracking(fname="/etc/shadow")
- property config_scope
Config scope for current filter.
- default_config = {'disabled': False}
Default config for
Filter.
- property disabled
If current filter is disabled.