SkyAPM / aiops-engine-for-skywalking

This is an incubating repository of the Apache SkyWalking AIOps Engine
https://github.com/apache/skywalking/discussions/8883
Apache License 2.0
37 stars 7 forks source link

New feature with an alert manager #16

Closed Fengrui-Liu closed 1 year ago

Fengrui-Liu commented 2 years ago

Now, we have a smart alert manager to reduce the alerts by concatenating them together,

Besides, I fix some bugs with spot detector.

wu-sheng commented 2 years ago

@Superskyyy Is this project moving into alerting rather than baseline calculation?

Superskyyy commented 2 years ago

@Superskyyy Is this project moving into alerting rather than baseline calculation?

No, alerting is the least important at the current stage, we rather focus on visualization and expandability to let users make sense of the AIOps output.

I think the idea is to have this (AlertManager) threshold to suppress continuous anomalies and false positives as algorithms cannot be 100% correct at all times. So merging the positives will reduce noise. The alert here will not directly send notifications to users via any channels according to the design, it should only serve as a mechanism to help annotate metrics in the BoosterUI.

Future PRs on the integration with SkyWalking will enhance this part.

Superskyyy commented 2 years ago

I will review this PR tomorrow. Bit busy moving to a new place.

Fengrui-Liu commented 2 years ago

@wu-sheng @Superskyyy

Exactly, here is an example shows how the continuous anomalies from groundtruth affect the evaluation of our detectors.

Some groundtruth label a range of data as anomalies (red marker of the blue line in the pic). They always contain sort of normal data who have low anomaly scores (the black part in the pic). However, this is not a limitation of the detectors, we need a alertmanager to group the continuous anomalies into one "anomaly event".

image

Superskyyy commented 1 year ago

Please resolve the conflict and address CI.

Superskyyy commented 1 year ago

Please help me to add a - '**/*.log' to this line https://github.com/SkyAPM/aiops-engine-for-skywalking/blob/b162918fb2cd07e79ee496c27b4639d8220e8eac/.licenserc.yaml#L31

I forgot to add one last PR to ignore log files.

Superskyyy commented 1 year ago

Please run the linters on your local dev environment first, by make lint, it should output the exact same problems as the CI indicates. You can fix many of the things like quotes by invoking make lint-fix.

Fengrui-Liu commented 1 year ago

Please run the linters on your local dev environment first, by make lint, it should output the exact same problems as the CI indicates. You can fix many of the things like quotes by invoking make lint-fix.

Finally ..... finished

So strict linter 😭

Superskyyy commented 1 year ago

Please run the linters on your local dev environment first, by make lint, it should output the exact same problems as the CI indicates. You can fix many of the things like quotes by invoking make lint-fix.

Finally ..... finished

So strict linter 😭

It's the same used for skywalking-python code, for the purpose of facilitating good coding habits. The codebase will get very messy to understand for new contributors if we don't follow the same coding style as indicated in the docs/codingStyle.md, especially in Python (a language that has so many ways to write the same expression). Before we had these linters in skywalking-python, we used more than 4 ways to format strings...

Please stick to the conventions. 😄

Superskyyy commented 1 year ago

LGTM