Skip to content

Development#173

Merged
whotwagner merged 234 commits into
mainfrom
development
Jun 12, 2026
Merged

Development#173
whotwagner merged 234 commits into
mainfrom
development

Conversation

@ipmach

@ipmach ipmach commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

No description provided.

ernstleierzopf and others added 30 commits March 9, 2026 15:42
…e/DetectMateLibrary into feature/new-event-detector
path_templates is not longer required by the MatcherParser
Adds a post-training validation step that logs warnings when a
manually-configured detector's EventIDs or variable names/positions
have no coverage in the training data, preventing silent no-op
detection (e.g. Apache logs where log_format captures all variables
with no templates). Also warns when auto_config=True produces an
empty configuration.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… matcher

Users can now write <label> instead of <*> in template files to give
wildcards meaningful names, and use an EventId column in CSV template
files to assign stable string identifiers to events. Both formats are
compiled to the existing positional representation at load time, so all
runtime code (ParserSchema, get_configured_variables) is unchanged.

- _compile_templates(): converts <label> → <*> and records label order
  and per-template event ID labels (from CSV EventId column)
- TemplatesManager / TemplateMatcher: accept metadata; expose
  compile_detector_config() to resolve string pos labels and string
  event keys to positional ints before pipeline startup
- Variable.pos: str | int (string = named label, compiled to int)
- Variable.name: optional (defaults to empty; label serves as name)
- load_templates(): returns (templates, event_id_labels); CSV files
  support an optional EventId column for named event IDs (.txt files
  remain positional-only)
- Tests and test fixtures for all new paths; roundtrip tests confirm
  string pos and string event keys survive YAML → Pydantic → YAML

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
feat/configuration2.0: identifiers for variables and events
Warn when detector config doesn't match training data
ernstleierzopf and others added 25 commits May 31, 2026 15:42
…aviour

json_parser: remove non-existent flatten_nested/ignore_parse_errors fields,
correct content_parser to sibling-entry format, fix template path, add
missing imports and a dict-based usage example with verified output.

new_value: fix broken Python example (undefined cfg, unused BufferMode import).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Comment thread src/detectmatelibrary/detectors/value_range_detector.py Dismissed
try:
json.dumps(v)
safe[k] = v
except (TypeError, ValueError):

Format is backend-specific.
"""
...
@abstractmethod
def load(cls, data: bytes, **kwargs: Any) -> "EventDataStructure":
"""Restore state from bytes produced by dump()."""
...
import the persistency package. This preserves the dependency direction
detectmate -> persistency, not the reverse.
"""
def stop(self) -> None: ...
def to_state(self) -> Dict[str, Any]:
"""Serialize tracker state to a plain dict (must be msgpack-
compatible)."""
...
@abstractmethod
def from_state(cls, state: Dict[str, Any]) -> "SingleTracker":
"""Restore tracker from a state dict produced by to_state()."""
...
@whotwagner whotwagner merged commit b0ec47c into main Jun 12, 2026
7 checks passed
@whotwagner whotwagner deleted the development branch June 12, 2026 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants