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

feat: Introduce index audit to lokitool #13008

Merged
merged 17 commits into from
Jun 3, 2024
Merged

feat: Introduce index audit to lokitool #13008

merged 17 commits into from
Jun 3, 2024

Conversation

DylanGuedes
Copy link
Contributor

@DylanGuedes DylanGuedes commented May 21, 2024

Adds a new index audit command to the lokitool cmd.
The new index audit validates that all chunks required by a given index are available at the object storage. This is useful to validate if you're missing data after a backfill or when migrating data from one Loki instance to another.
See pkg/tool/audit/README.md for usage instructions.

@DylanGuedes DylanGuedes changed the title TBD May 22, 2024
@DylanGuedes DylanGuedes marked this pull request as ready for review May 22, 2024 19:09
@DylanGuedes DylanGuedes requested a review from a team as a code owner May 22, 2024 19:09
os.Exit(1)
}

found, missing, err := audit.Run(context.Background(), a.path, "19859", auditCfg, logger)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

19859 is hardcoded. Shouldn't this be a table name?

Copy link
Contributor Author

@DylanGuedes DylanGuedes May 23, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good question. I'll check it again but my thought here was: this table name is only used by tsdb to compute the interval, which is 24h in our case. So instead of asking the user to give the table name I preset it.

That said: I'll check how the TSDB internals use it, maybe we don't even need the table at all 🤷

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've updated the code, WDYT?

Copy link
Contributor

@MichelHollands MichelHollands left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One comment that can be removed but otherwise LGTM

logger := log.NewLogfmtLogger(os.Stdout)

var auditCfg audit.Config
// configFileArg := fmt.Sprintf("-config.file=%s", a.configFile)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can be removed

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oops 😅

@DylanGuedes DylanGuedes merged commit 47f0236 into main Jun 3, 2024
59 checks passed
@DylanGuedes DylanGuedes deleted the audit-lokitool branch June 3, 2024 17:41
trevorwhitney added a commit that referenced this pull request Jun 3, 2024
commit 35585db
Merge: 1822b88 47f0236
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Mon Jun 3 11:43:12 2024 -0600

    Merge branch 'main' into sample-count-and-bytes

commit 1822b88
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Mon Jun 3 11:42:52 2024 -0600

    fix: formatting

commit 47f0236
Author: Dylan Guedes <djmgguedes@gmail.com>
Date:   Mon Jun 3 14:41:55 2024 -0300

    feat: Introduce `index audit` to `lokitool` (#13008)

    Adds a new `index audit` command to the `lokitool` cmd.
    The new `index audit` validates that all chunks required by a given index are available at the object storage. This is useful to validate if you're missing data after a backfill or when migrating data from one Loki instance to another.
    See `pkg/tool/audit/README.md` for usage instructions.

commit 71507a2
Author: Kaviraj Kanagaraj <kavirajkanagaraj@gmail.com>
Date:   Mon Jun 3 18:18:39 2024 +0200

    feat(canary): Add test to check query results with and without cache. (#13104)

    Signed-off-by: Kaviraj <kavirajkanagaraj@gmail.com>

commit 7942e57
Merge: 6ed195e 8084259
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Mon Jun 3 09:27:58 2024 -0600

    Merge branch 'main' into sample-count-and-bytes

commit 6ed195e
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Mon Jun 3 09:25:37 2024 -0600

    fix: nanosecond values in test with non-decimal seconds value

commit 8084259
Author: Yuri Kotov <jura.kotov@gmail.com>
Date:   Mon Jun 3 21:30:25 2024 +0700

    feat: API: Expose optional label matcher for label names API (#11982)

    Co-authored-by: Cyril Tovena <cyril.tovena@gmail.com>

commit 09faea8
Author: Yoshitaka Fujii <76274657+ystkfujii@users.noreply.github.com>
Date:   Mon Jun 3 21:16:10 2024 +0900

    docs: Fix link in examples (#13094)

    Co-authored-by: J Stickler <julie.stickler@grafana.com>

commit c8cc0fb
Author: Grot (@grafanabot) <43478413+grafanabot@users.noreply.github.com>
Date:   Mon Jun 3 12:39:26 2024 +0100

    chore( operator): community release 0.6.1 (#12593)

commit fbd2739
Author: Joao Marcal <jmarcal@redhat.com>
Date:   Mon Jun 3 12:15:47 2024 +0200

    chore(operator): prepare community release v0.6.1 (#13105)

commit 4f3ed77
Author: Robert Jacob <rojacob@redhat.com>
Date:   Mon Jun 3 11:02:15 2024 +0200

    fix(operator): Use a minimum value for replay memory ceiling (#13066)

commit cbf9fc0
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Fri May 31 16:46:39 2024 -0600

    docs: update docs

commit 29febb7
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Fri May 31 16:42:12 2024 -0600

    chore: make format

commit 87f7282
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Fri May 31 16:34:48 2024 -0600

    chore: clean up linting

commit abb31a8
Merge: 33ead60 00d3c7a
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Fri May 31 16:10:58 2024 -0600

    Merge branch 'main' into sample-count-and-bytes

commit 33ead60
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Fri May 31 16:03:04 2024 -0600

    feat: hook up samples endpoint

commit eb84303
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Fri May 31 13:07:49 2024 -0600

    chore: a bit of cleanup

commit 6dd77ae
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Fri May 31 12:56:05 2024 -0600

    feat: refactor metric samples to be it's own endpoint

commit 2587657
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Fri May 24 17:35:15 2024 -0600

    fix: grouping

commit b897fc5
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Fri May 24 13:36:00 2024 -0600

    fix: ring proxy methods on pattern ring_client

commit 0bfd0ad
Merge: 68aa188 efdae3d
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Thu May 23 17:04:32 2024 -0600

    Merge branch 'main' into sample-count-and-bytes

commit 68aa188
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Thu May 23 17:03:32 2024 -0600

    feat: guard aggregation behavior behind a feature flag

commit f0d6a92
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Thu May 23 14:03:32 2024 -0600

    feat: reject filter queries to /patterns endpoint

commit dc620e7
Author: Trevor Whitney <trevorjwhitney@gmail.com>
Date:   Wed May 8 14:08:44 2024 -0600

    feat: collect and serve pre-agg bytes and count

    * pre-aggregate bytes and count per stream in the pattern ingester
    * serve bytes_over_time and count_over_time queries from the patterns
      endpoint
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2 participants