Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tags concept should be reworked to metadata #817

Open
lunkwill42 opened this issue May 24, 2024 · 0 comments
Open

Tags concept should be reworked to metadata #817

lunkwill42 opened this issue May 24, 2024 · 0 comments
Labels
discussion Requires developer feedback/discussion before implementation enhancement New feature or request

Comments

@lunkwill42
Copy link
Member

Argus' tag concept is simple enough for most cases where arbitrary metadata needs to be attached to an incident: A flat list of key/values, where values are always strings.

However, there are many use-cases where metadata needs to be slightly more complex, especially if we want to introduce more advanced filtering functionality. Some examples:

  • We might want to filter on metadata number values using "less than" or "greather than" filters. The only way to do that would if the metadata values themselves had data types, rather than being strings-only.

  • Users such as the GÉANT NOC want to have more structured metadata. A simple example could be that one piece of metadata needs to be a list of values, or even a list of sub-keys and values (where values also have simple data types).

  • Today's tag data model is really over-engineered considering its outward simplicity. Tags have creation dates and authors, which several years of use has shown is really not that useful. The JSON data model used for submitting incident tags in the API is also needlessly complex compared to the outward simplicity of the current tag concept, as described in Simplify the tag data structure required by the Incident API endpoint #136.

Ultimately, #790 introduced a new metadata attribute to the incident model. This attribute is a JSON document, which would allow for nearly arbitrarily complex metadata (within reason). It was added as an alternative to tags, but Argus has (not yet, anyway) no filtering capabilities for this field.

I would suggest that the current tag model be entirely scrapped and replaced by the new metadata attribute.

As discussed in #790 (comment) and IRL several times.

@lunkwill42 lunkwill42 added enhancement New feature or request discussion Requires developer feedback/discussion before implementation labels May 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Requires developer feedback/discussion before implementation enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant