Skip to content

app/vlagent/remotewrite: introduce VictoriaLogs transformations language#1508

Open
vadimalekseev wants to merge 1 commit into
masterfrom
vlt
Open

app/vlagent/remotewrite: introduce VictoriaLogs transformations language#1508
vadimalekseev wants to merge 1 commit into
masterfrom
vlt

Conversation

@vadimalekseev

@vadimalekseev vadimalekseev commented Jun 15, 2026

Copy link
Copy Markdown
Member

@vadimalekseev vadimalekseev marked this pull request as draft June 15, 2026 14:45

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

3 issues found across 33 files

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

Comment thread lib/logstorage/log_rows.go
Comment thread lib/logstorage/transforms.go Outdated
Comment thread lib/logstorage/block_result.go
@vadimalekseev vadimalekseev force-pushed the vlt branch 5 times, most recently from 1e493dd to e300516 Compare June 22, 2026 10:56
@vadimalekseev vadimalekseev force-pushed the vlt branch 5 times, most recently from 39f6deb to c3556c4 Compare June 25, 2026 06:58
@vadimalekseev vadimalekseev marked this pull request as ready for review June 25, 2026 06:58

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

4 issues found and verified against the latest diff

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

Comment thread lib/logstorage/log_rows.go Outdated
Comment thread lib/logstorage/log_rows.go Outdated
Comment thread lib/logstorage/block_result.go
Comment thread lib/logstorage/transforms.go Outdated
fields := rows[0]
for i := range fields {
name := br.addValue(fields[i].Name)
name := getCanonicalColumnName(fields[i].Name)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

These changes are not related to log transformations, but without them, my tests fail.

@vadimalekseev vadimalekseev force-pushed the vlt branch 3 times, most recently from 8ad3249 to e286231 Compare June 25, 2026 08:56
timestamps = br.getTimestamps()
} else {
// Slow path: the _time column was overwritten or removed, initialize it again.
br.initTimestamps()

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Modifying br here by calling initTimestamps is a questionable approach - no other pipe does this. However, it simplifies the code and avoids duplicating logic.

//
// It stops calling visitFunc on the remaining filters as soon as visitFunc returns true.
// It returns the result of the last visitFunc call.
func visitFilterRecursiveForPipe(p pipe, visitFunc func(f filter) bool) bool {

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

This code was written in the hope that it would be replaced with supporting relative time filters in VictoriaLogs transformations.

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.

Support for Log Transformations in vlagent

1 participant