From a7980854f085da989122cb103737edc149b5ff35 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Tue, 26 Nov 2024 13:45:16 +0100 Subject: [PATCH 01/13] First unifiedlogs implementation --- .../input/default-inputs/inputs_darwin.go | 54 ++++ .../input/default-inputs/inputs_other.go | 2 +- x-pack/filebeat/input/unifiedlogs/config.go | 59 ++++ x-pack/filebeat/input/unifiedlogs/input.go | 261 ++++++++++++++++++ x-pack/filebeat/input/unifiedlogs/metrics.go | 37 +++ 5 files changed, 412 insertions(+), 1 deletion(-) create mode 100644 x-pack/filebeat/input/default-inputs/inputs_darwin.go create mode 100644 x-pack/filebeat/input/unifiedlogs/config.go create mode 100644 x-pack/filebeat/input/unifiedlogs/input.go create mode 100644 x-pack/filebeat/input/unifiedlogs/metrics.go diff --git a/x-pack/filebeat/input/default-inputs/inputs_darwin.go b/x-pack/filebeat/input/default-inputs/inputs_darwin.go new file mode 100644 index 00000000000..b43d75258b3 --- /dev/null +++ b/x-pack/filebeat/input/default-inputs/inputs_darwin.go @@ -0,0 +1,54 @@ +// Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one +// or more contributor license agreements. Licensed under the Elastic License; +// you may not use this file except in compliance with the Elastic License. + +//go:build darwin + +package inputs + +import ( + "github.com/elastic/beats/v7/filebeat/beater" + v2 "github.com/elastic/beats/v7/filebeat/input/v2" + "github.com/elastic/beats/v7/libbeat/beat" + "github.com/elastic/beats/v7/x-pack/filebeat/input/awscloudwatch" + "github.com/elastic/beats/v7/x-pack/filebeat/input/awss3" + "github.com/elastic/beats/v7/x-pack/filebeat/input/azureblobstorage" + "github.com/elastic/beats/v7/x-pack/filebeat/input/azureeventhub" + "github.com/elastic/beats/v7/x-pack/filebeat/input/benchmark" + "github.com/elastic/beats/v7/x-pack/filebeat/input/cel" + "github.com/elastic/beats/v7/x-pack/filebeat/input/cloudfoundry" + "github.com/elastic/beats/v7/x-pack/filebeat/input/entityanalytics" + "github.com/elastic/beats/v7/x-pack/filebeat/input/gcs" + "github.com/elastic/beats/v7/x-pack/filebeat/input/http_endpoint" + "github.com/elastic/beats/v7/x-pack/filebeat/input/httpjson" + "github.com/elastic/beats/v7/x-pack/filebeat/input/lumberjack" + "github.com/elastic/beats/v7/x-pack/filebeat/input/netflow" + "github.com/elastic/beats/v7/x-pack/filebeat/input/o365audit" + "github.com/elastic/beats/v7/x-pack/filebeat/input/salesforce" + "github.com/elastic/beats/v7/x-pack/filebeat/input/streaming" + "github.com/elastic/beats/v7/x-pack/filebeat/input/unifiedlogs" + "github.com/elastic/elastic-agent-libs/logp" +) + +func xpackInputs(info beat.Info, log *logp.Logger, store beater.StateStore) []v2.Plugin { + return []v2.Plugin{ + azureblobstorage.Plugin(log, store), + azureeventhub.Plugin(log), + cel.Plugin(log, store), + cloudfoundry.Plugin(), + entityanalytics.Plugin(log), + gcs.Plugin(log, store), + http_endpoint.Plugin(), + httpjson.Plugin(log, store), + o365audit.Plugin(log, store), + awss3.Plugin(store), + awscloudwatch.Plugin(), + lumberjack.Plugin(), + salesforce.Plugin(log, store), + streaming.Plugin(log, store), + streaming.PluginWebsocketAlias(log, store), + netflow.Plugin(log), + benchmark.Plugin(), + unifiedlogs.Plugin(log, store), + } +} diff --git a/x-pack/filebeat/input/default-inputs/inputs_other.go b/x-pack/filebeat/input/default-inputs/inputs_other.go index 731f8979766..a14145a5265 100644 --- a/x-pack/filebeat/input/default-inputs/inputs_other.go +++ b/x-pack/filebeat/input/default-inputs/inputs_other.go @@ -2,7 +2,7 @@ // or more contributor license agreements. Licensed under the Elastic License; // you may not use this file except in compliance with the Elastic License. -//go:build !aix && !windows +//go:build !aix && !darwin && !windows package inputs diff --git a/x-pack/filebeat/input/unifiedlogs/config.go b/x-pack/filebeat/input/unifiedlogs/config.go new file mode 100644 index 00000000000..da7bdd2d418 --- /dev/null +++ b/x-pack/filebeat/input/unifiedlogs/config.go @@ -0,0 +1,59 @@ +// Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one +// or more contributor license agreements. Licensed under the Elastic License; +// you may not use this file except in compliance with the Elastic License. + +//go:build darwin + +package unifiedlogs + +import ( + "fmt" + "strings" + "time" +) + +type config struct { + ArchiveFile string `config:"archive_file"` + TraceFile string `config:"trace_file"` + Predicate string `config:"predicate"` + Process []string `config:"process"` + Source bool `config:"source"` + Info bool `config:"info"` + Debug bool `config:"debug"` + Signposts bool `config:"signposts"` + Start string `config:"start"` + Timezone string `config:"timezone"` +} + +func (c config) Validate() error { + if err := checkDateFormat(c.Start); err != nil { + return fmt.Errorf("start date is not valid: %w", err) + } + if c.ArchiveFile != "" && !strings.HasSuffix(c.ArchiveFile, ".logarchive") { + return fmt.Errorf("archive_file %v has the wrong extension", c.ArchiveFile) + } + if c.TraceFile != "" && !strings.HasSuffix(c.TraceFile, ".tracev3") { + return fmt.Errorf("trace_file %v has the wrong extension", c.TraceFile) + } + return nil +} + +func defaultConfig() config { + return config{ + Timezone: "UTC", + } +} + +func checkDateFormat(date string) error { + acceptedLayouts := []string{ + "2006-01-02", + "2006-01-02 15:04:05", + "2006-01-02 15:04:05-0700", + } + for _, layout := range acceptedLayouts { + if _, err := time.Parse(layout, date); err == nil { + return nil + } + } + return fmt.Errorf("not a valid date, accepted layouts are: %v", acceptedLayouts) +} diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go new file mode 100644 index 00000000000..f47236f7d65 --- /dev/null +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -0,0 +1,261 @@ +// Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one +// or more contributor license agreements. Licensed under the Elastic License; +// you may not use this file except in compliance with the Elastic License. + +//go:build darwin + +package unifiedlogs + +import ( + "bufio" + "context" + "encoding/json" + "fmt" + "io" + "os" + "os/exec" + "time" + + v2 "github.com/elastic/beats/v7/filebeat/input/v2" + inputcursor "github.com/elastic/beats/v7/filebeat/input/v2/input-cursor" + "github.com/elastic/beats/v7/libbeat/beat" + "github.com/elastic/beats/v7/libbeat/feature" + "github.com/elastic/beats/v7/libbeat/monitoring/inputmon" + conf "github.com/elastic/elastic-agent-libs/config" + "github.com/elastic/elastic-agent-libs/logp" + "github.com/elastic/elastic-agent-libs/mapstr" + "github.com/elastic/go-concert/ctxtool" +) + +const ( + inputName = "unifiedlogs" + srcArchiveName = "log-cmd-archive" + srcPollName = "log-cmd-poll" +) + +var ( + // override for testing + timeNow = time.Now +) + +func Plugin(log *logp.Logger, store inputcursor.StateStore) v2.Plugin { + return v2.Plugin{ + Name: inputName, + Stability: feature.Beta, + Deprecated: false, + Manager: &inputcursor.InputManager{ + Logger: log, + StateStore: store, + Type: inputName, + Configure: cursorConfigure, + }, + } +} + +type cursor struct { + Timestamp string `json:"timestamp"` +} + +type source struct { + name string +} + +func newSource(config config) source { + if config.ArchiveFile != "" || config.TraceFile != "" { + return source{name: srcArchiveName} + } + return source{name: srcPollName} +} + +func (src source) Name() string { return src.name } + +type input struct { + config +} + +func cursorConfigure(cfg *conf.C) ([]inputcursor.Source, inputcursor.Input, error) { + conf := defaultConfig() + if err := cfg.Unpack(&conf); err != nil { + return nil, nil, err + } + sources, inp := newCursorInput(conf) + return sources, inp, nil +} + +func newCursorInput(config config) ([]inputcursor.Source, inputcursor.Input) { + input := &input{config: config} + return []inputcursor.Source{newSource(config)}, input +} + +func (input) Name() string { return inputName } + +func (input input) Test(src inputcursor.Source, _ v2.TestContext) error { + if _, err := exec.LookPath("log"); err != nil { + return err + } + if src.Name() == srcArchiveName { + if _, err := os.Stat(input.ArchiveFile); input.ArchiveFile != "" && os.IsNotExist(err) { + return err + } + if _, err := os.Stat(input.TraceFile); input.TraceFile != "" && os.IsNotExist(err) { + return err + } + } + return nil +} + +// Run starts the input and blocks until it ends the execution. +func (input *input) Run(ctxt v2.Context, src inputcursor.Source, resumeCursor inputcursor.Cursor, pub inputcursor.Publisher) error { + reg, unreg := inputmon.NewInputRegistry(input.Name(), ctxt.ID, nil) + defer unreg() + + stdCtx := ctxtool.FromCanceller(ctxt.Cancelation) + metrics := newInputMetrics(reg) + log := ctxt.Logger.With("source", src.Name()) + logCmd, err := newLogCmd(stdCtx, input.config, resumeCursor) + if err != nil { + return err + } + + return input.runWithMetrics(stdCtx, logCmd, pub, metrics, log) +} + +func (input *input) runWithMetrics(ctx context.Context, logCmd *exec.Cmd, pub inputcursor.Publisher, metrics *inputMetrics, log *logp.Logger) error { + for { + metrics.intervals.Add(1) + + select { + case <-ctx.Done(): + log.Infof("input stopped because context was cancelled with: %w", ctx.Err()) + return nil + default: + } + + pipe, err := logCmd.StdoutPipe() + if err != nil { + return fmt.Errorf("get stdout pipe: %w", err) + } + + if err := logCmd.Start(); err != nil { + return fmt.Errorf("start log command: %w", err) + } + + if err = input.processLogs(pipe, pub, metrics, log); err != nil { + log.Errorf("process logs: %w", err) + } + + if err := logCmd.Wait(); err != nil { + return fmt.Errorf("log command exited with an error: %w", err) + } + + if input.isArchive() { + log.Info("finished processing the archived logs, stopping") + return nil + } + } +} + +func (input *input) isArchive() bool { return input.ArchiveFile != "" || input.TraceFile != "" } + +func (input *input) processLogs(stdout io.Reader, pub inputcursor.Publisher, metrics *inputMetrics, log *logp.Logger) error { + scanner := bufio.NewScanner(stdout) + + var c int64 + defer func() { metrics.intervalEvents.Update(c) }() + + for scanner.Scan() { + line := scanner.Text() + var logRecord cursor + if err := json.Unmarshal([]byte(line), &logRecord); err != nil { + log.Errorf("invalid json log: %w", err) + metrics.errs.Add(1) + continue + } + + event, err := makeEvent(logRecord.Timestamp, line) + if err != nil { + log.Errorf("makeEvent: %w", err) + metrics.errs.Add(1) + continue + } + + if err := pub.Publish(event, logRecord); err != nil { + log.Errorf("publish event: %w", err) + metrics.errs.Add(1) + continue + } + + c++ + } + if err := scanner.Err(); err != nil { + metrics.errs.Add(1) + return fmt.Errorf("scanning stdout: %w", err) + } + return nil +} + +func newLogCmd(ctx context.Context, config config, resumeCursor inputcursor.Cursor) (*exec.Cmd, error) { + args := []string{"show", "--style", "ndjson"} + if config.ArchiveFile != "" { + args = append(args, "--archive", config.ArchiveFile) + } + if config.TraceFile != "" { + args = append(args, "--file", config.TraceFile) + } + if config.Predicate != "" { + args = append(args, "--predicate", config.Predicate) + } + if len(config.Process) > 0 { + for _, p := range config.Process { + args = append(args, "--process", p) + } + } + if config.Source { + args = append(args, "--source") + } + if config.Info { + args = append(args, "--info") + } + if config.Debug { + args = append(args, "--debug") + } + if config.Signposts { + args = append(args, "--signposts") + } + if config.Timezone != "" { + args = append(args, "--timezone", config.Timezone) + } + start := config.Start + if !resumeCursor.IsNew() { + cursor := cursor{} + if err := resumeCursor.Unpack(&cursor); err != nil { + return nil, fmt.Errorf("unpacking cursor: %w", err) + } + start = cursor.Timestamp + } + if start != "" { + args = append(args, "--start", start) + } + return exec.CommandContext(ctx, "log", args...), nil +} + +func makeEvent(timestamp, message string) (beat.Event, error) { + const layout = "2006-01-02 15:04:05-0700" + + ts, err := time.Parse(layout, timestamp) + if err != nil { + return beat.Event{}, fmt.Errorf("invalid timestamp: %w", err) + } + now := timeNow() + fields := mapstr.M{ + "event": mapstr.M{ + "created": now, + }, + "message": message, + } + + return beat.Event{ + Timestamp: ts, + Fields: fields, + }, nil +} diff --git a/x-pack/filebeat/input/unifiedlogs/metrics.go b/x-pack/filebeat/input/unifiedlogs/metrics.go new file mode 100644 index 00000000000..fdce924fbb8 --- /dev/null +++ b/x-pack/filebeat/input/unifiedlogs/metrics.go @@ -0,0 +1,37 @@ +// Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one +// or more contributor license agreements. Licensed under the Elastic License; +// you may not use this file except in compliance with the Elastic License. + +//go:build darwin + +package unifiedlogs + +import ( + "github.com/rcrowley/go-metrics" + + "github.com/elastic/elastic-agent-libs/monitoring" + "github.com/elastic/elastic-agent-libs/monitoring/adapter" +) + +type inputMetrics struct { + intervalEvents metrics.Sample // histogram of the total events per interval + intervals *monitoring.Uint // total number of intervals executed + errs *monitoring.Uint // total number of errors +} + +func newInputMetrics(reg *monitoring.Registry) *inputMetrics { + if reg == nil { + return nil + } + + out := &inputMetrics{ + intervals: monitoring.NewUint(reg, "unifiedlogs_interval_total"), + errs: monitoring.NewUint(reg, "unifiedlogs_errors_total"), + intervalEvents: metrics.NewUniformSample(1024), + } + + _ = adapter.GetGoMetrics(reg, "unifiedlogs_interval_events", adapter.Accept). + GetOrRegister("histogram", metrics.NewHistogram(out.intervalEvents)) + + return out +} From d9d8004c65c7d42c132eb97407146aed29ae7ea0 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Thu, 28 Nov 2024 10:22:53 +0100 Subject: [PATCH 02/13] Fix date check and accept multiple predicates --- x-pack/filebeat/input/unifiedlogs/config.go | 5 ++++- x-pack/filebeat/input/unifiedlogs/input.go | 6 ++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/x-pack/filebeat/input/unifiedlogs/config.go b/x-pack/filebeat/input/unifiedlogs/config.go index da7bdd2d418..2ae4bd30f43 100644 --- a/x-pack/filebeat/input/unifiedlogs/config.go +++ b/x-pack/filebeat/input/unifiedlogs/config.go @@ -15,7 +15,7 @@ import ( type config struct { ArchiveFile string `config:"archive_file"` TraceFile string `config:"trace_file"` - Predicate string `config:"predicate"` + Predicate []string `config:"predicate"` Process []string `config:"process"` Source bool `config:"source"` Info bool `config:"info"` @@ -45,6 +45,9 @@ func defaultConfig() config { } func checkDateFormat(date string) error { + if date == "" { + return nil + } acceptedLayouts := []string{ "2006-01-02", "2006-01-02 15:04:05", diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index f47236f7d65..fff1a3b3e9c 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -202,8 +202,10 @@ func newLogCmd(ctx context.Context, config config, resumeCursor inputcursor.Curs if config.TraceFile != "" { args = append(args, "--file", config.TraceFile) } - if config.Predicate != "" { - args = append(args, "--predicate", config.Predicate) + if len(config.Predicate) > 0 { + for _, p := range config.Predicate { + args = append(args, "--predicate", p) + } } if len(config.Process) > 0 { for _, p := range config.Process { From 7f6ef20bb4dc662fdb84eaafe3bafbc2c7ce0352 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Thu, 28 Nov 2024 11:26:52 +0100 Subject: [PATCH 03/13] Fix cursor and date walking --- x-pack/filebeat/input/unifiedlogs/input.go | 107 ++++++++++++--------- 1 file changed, 61 insertions(+), 46 deletions(-) diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index fff1a3b3e9c..6473f91e310 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -28,9 +28,11 @@ import ( ) const ( - inputName = "unifiedlogs" - srcArchiveName = "log-cmd-archive" - srcPollName = "log-cmd-poll" + inputName = "unifiedlogs" + srcArchiveName = "log-cmd-archive" + srcPollName = "log-cmd-poll" + logDateLayout = "2006-01-02 15:04:05.999999-0700" + cursorDateLayout = "2006-01-02 15:04:05-0700" ) var ( @@ -52,7 +54,7 @@ func Plugin(log *logp.Logger, store inputcursor.StateStore) v2.Plugin { } } -type cursor struct { +type logRecord struct { Timestamp string `json:"timestamp"` } @@ -112,36 +114,50 @@ func (input *input) Run(ctxt v2.Context, src inputcursor.Source, resumeCursor in stdCtx := ctxtool.FromCanceller(ctxt.Cancelation) metrics := newInputMetrics(reg) log := ctxt.Logger.With("source", src.Name()) - logCmd, err := newLogCmd(stdCtx, input.config, resumeCursor) - if err != nil { - return err - } - return input.runWithMetrics(stdCtx, logCmd, pub, metrics, log) + return input.runWithMetrics(stdCtx, resumeCursor, pub, metrics, log) } -func (input *input) runWithMetrics(ctx context.Context, logCmd *exec.Cmd, pub inputcursor.Publisher, metrics *inputMetrics, log *logp.Logger) error { +func (input *input) runWithMetrics(ctx context.Context, resumeCursor inputcursor.Cursor, pub inputcursor.Publisher, metrics *inputMetrics, log *logp.Logger) error { + var startFrom string + if !resumeCursor.IsNew() { + var cursor time.Time + if err := resumeCursor.Unpack(&cursor); err != nil { + return fmt.Errorf("unpack cursor: %w", err) + } + startFrom = cursor.Format(cursorDateLayout) + log.Infof("cursor loaded, resuming from: %v", startFrom) + } for { metrics.intervals.Add(1) select { case <-ctx.Done(): - log.Infof("input stopped because context was cancelled with: %w", ctx.Err()) + log.Infof("input stopped because context was cancelled with: %v", ctx.Err()) return nil default: } + logCmd, err := newLogCmd(ctx, input.config, startFrom) + if err != nil { + return fmt.Errorf("new log command: %w", err) + } + pipe, err := logCmd.StdoutPipe() if err != nil { return fmt.Errorf("get stdout pipe: %w", err) } + log.Debugf("exec command start: %v", logCmd) if err := logCmd.Start(); err != nil { return fmt.Errorf("start log command: %w", err) } - if err = input.processLogs(pipe, pub, metrics, log); err != nil { - log.Errorf("process logs: %w", err) + lastProcessedDate, err := input.processLogs(pipe, pub, metrics, log) + if err != nil { + log.Errorf("process logs: %v", err) + } else { + startFrom = lastProcessedDate } if err := logCmd.Wait(); err != nil { @@ -157,44 +173,53 @@ func (input *input) runWithMetrics(ctx context.Context, logCmd *exec.Cmd, pub in func (input *input) isArchive() bool { return input.ArchiveFile != "" || input.TraceFile != "" } -func (input *input) processLogs(stdout io.Reader, pub inputcursor.Publisher, metrics *inputMetrics, log *logp.Logger) error { +func (input *input) processLogs(stdout io.Reader, pub inputcursor.Publisher, metrics *inputMetrics, log *logp.Logger) (string, error) { scanner := bufio.NewScanner(stdout) - var c int64 - defer func() { metrics.intervalEvents.Update(c) }() - + var ( + event beat.Event + line string + logRecord logRecord + lastProcessedDate string + timestamp time.Time + err error + count int64 + ) + + defer func() { metrics.intervalEvents.Update(count) }() for scanner.Scan() { - line := scanner.Text() - var logRecord cursor - if err := json.Unmarshal([]byte(line), &logRecord); err != nil { - log.Errorf("invalid json log: %w", err) + line = scanner.Text() + if err = json.Unmarshal([]byte(line), &logRecord); err != nil { + log.Errorf("invalid json log: %v", err) metrics.errs.Add(1) continue } - event, err := makeEvent(logRecord.Timestamp, line) + timestamp, err = time.Parse(logDateLayout, logRecord.Timestamp) if err != nil { - log.Errorf("makeEvent: %w", err) metrics.errs.Add(1) + log.Errorf("invalid timestamp: %v", err) continue } - if err := pub.Publish(event, logRecord); err != nil { - log.Errorf("publish event: %w", err) + event = makeEvent(timestamp, line) + if err = pub.Publish(event, timestamp); err != nil { + log.Errorf("publish event: %v", err) metrics.errs.Add(1) continue } - - c++ + lastProcessedDate = timestamp.Format(cursorDateLayout) + count++ } - if err := scanner.Err(); err != nil { + if err = scanner.Err(); err != nil { metrics.errs.Add(1) - return fmt.Errorf("scanning stdout: %w", err) + return "", fmt.Errorf("scanning stdout: %w", err) } - return nil + + return lastProcessedDate, nil } -func newLogCmd(ctx context.Context, config config, resumeCursor inputcursor.Cursor) (*exec.Cmd, error) { +func newLogCmd(ctx context.Context, config config, startFrom string) (*exec.Cmd, error) { args := []string{"show", "--style", "ndjson"} if config.ArchiveFile != "" { args = append(args, "--archive", config.ArchiveFile) @@ -228,12 +253,8 @@ func newLogCmd(ctx context.Context, config config, resumeCursor inputcursor.Curs args = append(args, "--timezone", config.Timezone) } start := config.Start - if !resumeCursor.IsNew() { - cursor := cursor{} - if err := resumeCursor.Unpack(&cursor); err != nil { - return nil, fmt.Errorf("unpacking cursor: %w", err) - } - start = cursor.Timestamp + if startFrom != "" { + start = startFrom } if start != "" { args = append(args, "--start", start) @@ -241,13 +262,7 @@ func newLogCmd(ctx context.Context, config config, resumeCursor inputcursor.Curs return exec.CommandContext(ctx, "log", args...), nil } -func makeEvent(timestamp, message string) (beat.Event, error) { - const layout = "2006-01-02 15:04:05-0700" - - ts, err := time.Parse(layout, timestamp) - if err != nil { - return beat.Event{}, fmt.Errorf("invalid timestamp: %w", err) - } +func makeEvent(timestamp time.Time, message string) beat.Event { now := timeNow() fields := mapstr.M{ "event": mapstr.M{ @@ -257,7 +272,7 @@ func makeEvent(timestamp, message string) (beat.Event, error) { } return beat.Event{ - Timestamp: ts, + Timestamp: timestamp, Fields: fields, - }, nil + } } From 7303fc5dc0400b65cdec67034ffcbe677713e6e3 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Thu, 28 Nov 2024 11:37:21 +0100 Subject: [PATCH 04/13] Log stderr on error --- x-pack/filebeat/input/unifiedlogs/input.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index 6473f91e310..09db823fd16 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -143,25 +143,30 @@ func (input *input) runWithMetrics(ctx context.Context, resumeCursor inputcursor return fmt.Errorf("new log command: %w", err) } - pipe, err := logCmd.StdoutPipe() + outpipe, err := logCmd.StdoutPipe() if err != nil { return fmt.Errorf("get stdout pipe: %w", err) } + errpipe, err := logCmd.StderrPipe() + if err != nil { + return fmt.Errorf("get stderr pipe: %w", err) + } log.Debugf("exec command start: %v", logCmd) if err := logCmd.Start(); err != nil { return fmt.Errorf("start log command: %w", err) } - lastProcessedDate, err := input.processLogs(pipe, pub, metrics, log) + lastProcessedDate, err := input.processLogs(outpipe, pub, metrics, log) if err != nil { log.Errorf("process logs: %v", err) } else { startFrom = lastProcessedDate } + stderrBytes, _ := io.ReadAll(errpipe) if err := logCmd.Wait(); err != nil { - return fmt.Errorf("log command exited with an error: %w", err) + return fmt.Errorf("log command exited with an error: %w, %q", err, string(stderrBytes)) } if input.isArchive() { From 1652eaba187cf963ffd55e34a2478b7befdc9384 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Thu, 28 Nov 2024 11:53:30 +0100 Subject: [PATCH 05/13] Add 1s tick --- x-pack/filebeat/input/unifiedlogs/input.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index 09db823fd16..352c93a74ba 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -128,6 +128,8 @@ func (input *input) runWithMetrics(ctx context.Context, resumeCursor inputcursor startFrom = cursor.Format(cursorDateLayout) log.Infof("cursor loaded, resuming from: %v", startFrom) } + tick := time.NewTicker(time.Second) + defer tick.Stop() for { metrics.intervals.Add(1) @@ -135,7 +137,7 @@ func (input *input) runWithMetrics(ctx context.Context, resumeCursor inputcursor case <-ctx.Done(): log.Infof("input stopped because context was cancelled with: %v", ctx.Err()) return nil - default: + case <-tick.C: } logCmd, err := newLogCmd(ctx, input.config, startFrom) From 97d42b3edbcc524cb337c5e2071855c1cb07bd57 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Fri, 29 Nov 2024 10:17:27 +0100 Subject: [PATCH 06/13] Refactor to do automatic backfill --- x-pack/filebeat/input/unifiedlogs/config.go | 39 ++- x-pack/filebeat/input/unifiedlogs/input.go | 254 ++++++++++++------- x-pack/filebeat/input/unifiedlogs/metrics.go | 14 +- 3 files changed, 189 insertions(+), 118 deletions(-) diff --git a/x-pack/filebeat/input/unifiedlogs/config.go b/x-pack/filebeat/input/unifiedlogs/config.go index 2ae4bd30f43..0999e7d768b 100644 --- a/x-pack/filebeat/input/unifiedlogs/config.go +++ b/x-pack/filebeat/input/unifiedlogs/config.go @@ -13,22 +13,37 @@ import ( ) type config struct { - ArchiveFile string `config:"archive_file"` - TraceFile string `config:"trace_file"` - Predicate []string `config:"predicate"` - Process []string `config:"process"` - Source bool `config:"source"` - Info bool `config:"info"` - Debug bool `config:"debug"` - Signposts bool `config:"signposts"` - Start string `config:"start"` - Timezone string `config:"timezone"` + showConfig + commonConfig + Backfill bool `config:"backfill"` +} + +type showConfig struct { + ArchiveFile string `config:"archive_file"` + TraceFile string `config:"trace_file"` + Start string `config:"start"` + End string `config:"end"` +} + +type commonConfig struct { + Predicate []string `config:"predicate"` + Process []string `config:"process"` + Source bool `config:"source"` + Info bool `config:"info"` + Debug bool `config:"debug"` + Backtrace bool `config:"backtrace"` + Signpost bool `config:"signpost"` + Unreliable bool `config:"unreliable"` + MachContinuousTime bool `config:"mach_continuous_time"` } func (c config) Validate() error { if err := checkDateFormat(c.Start); err != nil { return fmt.Errorf("start date is not valid: %w", err) } + if err := checkDateFormat(c.End); err != nil { + return fmt.Errorf("end date is not valid: %w", err) + } if c.ArchiveFile != "" && !strings.HasSuffix(c.ArchiveFile, ".logarchive") { return fmt.Errorf("archive_file %v has the wrong extension", c.ArchiveFile) } @@ -39,9 +54,7 @@ func (c config) Validate() error { } func defaultConfig() config { - return config{ - Timezone: "UTC", - } + return config{} } func checkDateFormat(date string) error { diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index 352c93a74ba..3daf7a3c0fa 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -12,8 +12,8 @@ import ( "encoding/json" "fmt" "io" - "os" "os/exec" + "sync" "time" v2 "github.com/elastic/beats/v7/filebeat/input/v2" @@ -25,6 +25,7 @@ import ( "github.com/elastic/elastic-agent-libs/logp" "github.com/elastic/elastic-agent-libs/mapstr" "github.com/elastic/go-concert/ctxtool" + "golang.org/x/sync/errgroup" ) const ( @@ -73,6 +74,7 @@ func (src source) Name() string { return src.name } type input struct { config + metrics *inputMetrics } func cursorConfigure(cfg *conf.C) ([]inputcursor.Source, inputcursor.Input, error) { @@ -95,14 +97,6 @@ func (input input) Test(src inputcursor.Source, _ v2.TestContext) error { if _, err := exec.LookPath("log"); err != nil { return err } - if src.Name() == srcArchiveName { - if _, err := os.Stat(input.ArchiveFile); input.ArchiveFile != "" && os.IsNotExist(err) { - return err - } - if _, err := os.Stat(input.TraceFile); input.TraceFile != "" && os.IsNotExist(err) { - return err - } - } return nil } @@ -110,101 +104,149 @@ func (input input) Test(src inputcursor.Source, _ v2.TestContext) error { func (input *input) Run(ctxt v2.Context, src inputcursor.Source, resumeCursor inputcursor.Cursor, pub inputcursor.Publisher) error { reg, unreg := inputmon.NewInputRegistry(input.Name(), ctxt.ID, nil) defer unreg() + input.metrics = newInputMetrics(reg) stdCtx := ctxtool.FromCanceller(ctxt.Cancelation) - metrics := newInputMetrics(reg) log := ctxt.Logger.With("source", src.Name()) - return input.runWithMetrics(stdCtx, resumeCursor, pub, metrics, log) -} + startFrom, err := loadCursor(resumeCursor, log) + if err != nil { + return err + } + if startFrom != "" { + input.Start = startFrom + } -func (input *input) runWithMetrics(ctx context.Context, resumeCursor inputcursor.Cursor, pub inputcursor.Publisher, metrics *inputMetrics, log *logp.Logger) error { - var startFrom string - if !resumeCursor.IsNew() { - var cursor time.Time - if err := resumeCursor.Unpack(&cursor); err != nil { - return fmt.Errorf("unpack cursor: %w", err) - } - startFrom = cursor.Format(cursorDateLayout) - log.Infof("cursor loaded, resuming from: %v", startFrom) - } - tick := time.NewTicker(time.Second) - defer tick.Stop() - for { - metrics.intervals.Add(1) - - select { - case <-ctx.Done(): - log.Infof("input stopped because context was cancelled with: %v", ctx.Err()) - return nil - case <-tick.C: - } + return input.runWithMetrics(stdCtx, pub, log) +} - logCmd, err := newLogCmd(ctx, input.config, startFrom) - if err != nil { - return fmt.Errorf("new log command: %w", err) - } +// wrappedPublisher wraps a publisher and stores the first published event date. +// this is required in order to backfill the events when we start a streaming command. +type wrappedPublisher struct { + once sync.Once + done chan struct{} + firstProcessedTime time.Time + inner inputcursor.Publisher +} - outpipe, err := logCmd.StdoutPipe() - if err != nil { - return fmt.Errorf("get stdout pipe: %w", err) - } - errpipe, err := logCmd.StderrPipe() - if err != nil { - return fmt.Errorf("get stderr pipe: %w", err) - } +func (pub *wrappedPublisher) Publish(event beat.Event, cursor interface{}) error { + pub.once.Do(func() { + pub.firstProcessedTime = cursor.(time.Time) + close(pub.done) + }) + return pub.inner.Publish(event, cursor) +} - log.Debugf("exec command start: %v", logCmd) - if err := logCmd.Start(); err != nil { - return fmt.Errorf("start log command: %w", err) - } +// getFfirstProcessedTime will block until there is a value set for firstProcessedTime. +func (pub *wrappedPublisher) getFfirstProcessedTime() time.Time { + <-pub.done + return pub.firstProcessedTime +} - lastProcessedDate, err := input.processLogs(outpipe, pub, metrics, log) - if err != nil { - log.Errorf("process logs: %v", err) - } else { - startFrom = lastProcessedDate - } +func (input *input) runWithMetrics(ctx context.Context, pub inputcursor.Publisher, log *logp.Logger) error { + wrappedPub := &wrappedPublisher{ + done: make(chan struct{}), + inner: pub, + } - stderrBytes, _ := io.ReadAll(errpipe) - if err := logCmd.Wait(); err != nil { - return fmt.Errorf("log command exited with an error: %w, %q", err, string(stderrBytes)) - } + var g errgroup.Group + // we start the streaming command in the background + // it will use the wrapped publisher to set the end date for the + // backfilling process. + if input.mustStream() { + g.Go(func() error { + logCmd := newLogStreamCmd(ctx, input.commonConfig) + return input.runLogCmd(logCmd, wrappedPub, log) + }) + } - if input.isArchive() { - log.Info("finished processing the archived logs, stopping") - return nil - } + if input.mustBackfill() { + g.Go(func() error { + if input.mustStream() { + t := wrappedPub.getFfirstProcessedTime() + // The time resolution of the log tool is microsecond, while it only + // accepts second resolution as an end parameter. + // To avoid potentially losing data we move the end forward one second, + // since it is preferable to have some duplicated events. + t = t.Add(time.Second) + input.End = t.Format(cursorDateLayout) + } + logCmd := newLogShowCmd(ctx, input.config) + err := input.runLogCmd(logCmd, pub, log) + if !input.mustStream() { + log.Debugf("finished processing events, stopping") + } + return err + }) } + + return g.Wait() } -func (input *input) isArchive() bool { return input.ArchiveFile != "" || input.TraceFile != "" } +// mustStream returns true in case a stream command is needed. +// This is the default case and the only exceptions are when an archive file or an end date are set. +func (input *input) mustStream() bool { + return !(input.ArchiveFile != "" || input.TraceFile != "" || input.End != "") +} + +// mustBackfill returns true in case a show command is needed. +// This happens when start or end dates are set (for example when resuming filebeat), when an archive file is used, +// or when user forces it via the backfill config. +func (input *input) mustBackfill() bool { + return input.Backfill || input.ArchiveFile != "" || input.TraceFile != "" || input.Start != "" || input.End != "" +} + +func (input *input) runLogCmd(logCmd *exec.Cmd, pub inputcursor.Publisher, log *logp.Logger) error { + outpipe, err := logCmd.StdoutPipe() + if err != nil { + return fmt.Errorf("get stdout pipe: %w", err) + } + errpipe, err := logCmd.StderrPipe() + if err != nil { + return fmt.Errorf("get stderr pipe: %w", err) + } + + log.Debugf("exec command start: %v", logCmd) + defer log.Debugf("exec command end: %v", logCmd) + + if err := logCmd.Start(); err != nil { + return fmt.Errorf("start log command: %w", err) + } + + if err := input.processLogs(outpipe, pub, log); err != nil { + log.Errorf("process logs: %v", err) + } + + stderrBytes, _ := io.ReadAll(errpipe) + if err := logCmd.Wait(); err != nil { + return fmt.Errorf("log command exited with an error: %w, %q", err, string(stderrBytes)) + } + + return nil +} -func (input *input) processLogs(stdout io.Reader, pub inputcursor.Publisher, metrics *inputMetrics, log *logp.Logger) (string, error) { +func (input *input) processLogs(stdout io.Reader, pub inputcursor.Publisher, log *logp.Logger) error { scanner := bufio.NewScanner(stdout) var ( - event beat.Event - line string - logRecord logRecord - lastProcessedDate string - timestamp time.Time - err error - count int64 + event beat.Event + line string + logRecord logRecord + timestamp time.Time + err error ) - defer func() { metrics.intervalEvents.Update(count) }() for scanner.Scan() { line = scanner.Text() if err = json.Unmarshal([]byte(line), &logRecord); err != nil { log.Errorf("invalid json log: %v", err) - metrics.errs.Add(1) + input.metrics.errs.Add(1) continue } timestamp, err = time.Parse(logDateLayout, logRecord.Timestamp) if err != nil { - metrics.errs.Add(1) + input.metrics.errs.Add(1) log.Errorf("invalid timestamp: %v", err) continue } @@ -212,22 +254,43 @@ func (input *input) processLogs(stdout io.Reader, pub inputcursor.Publisher, met event = makeEvent(timestamp, line) if err = pub.Publish(event, timestamp); err != nil { log.Errorf("publish event: %v", err) - metrics.errs.Add(1) + input.metrics.errs.Add(1) continue } - lastProcessedDate = timestamp.Format(cursorDateLayout) - count++ } if err = scanner.Err(); err != nil { - metrics.errs.Add(1) - return "", fmt.Errorf("scanning stdout: %w", err) + input.metrics.errs.Add(1) + return fmt.Errorf("scanning stdout: %w", err) } - return lastProcessedDate, nil + return nil +} + +func loadCursor(c inputcursor.Cursor, log *logp.Logger) (string, error) { + if c.IsNew() { + return "", nil + } + var ( + startFrom string + cursor time.Time + ) + if err := c.Unpack(&cursor); err != nil { + return "", fmt.Errorf("unpack cursor: %w", err) + } + log.Infof("cursor loaded, resuming from: %v", startFrom) + return cursor.Format(cursorDateLayout), nil } -func newLogCmd(ctx context.Context, config config, startFrom string) (*exec.Cmd, error) { - args := []string{"show", "--style", "ndjson"} +func newLogShowCmd(ctx context.Context, cfg config) *exec.Cmd { + return exec.CommandContext(ctx, "log", newLogCmdArgs("show", cfg)...) // #nosec G204 +} + +func newLogStreamCmd(ctx context.Context, cfg commonConfig) *exec.Cmd { + return exec.CommandContext(ctx, "log", newLogCmdArgs("stream", config{commonConfig: cfg})...) // #nosec G204 +} + +func newLogCmdArgs(subcmd string, config config) []string { + args := []string{subcmd, "--style", "ndjson"} if config.ArchiveFile != "" { args = append(args, "--archive", config.ArchiveFile) } @@ -253,20 +316,25 @@ func newLogCmd(ctx context.Context, config config, startFrom string) (*exec.Cmd, if config.Debug { args = append(args, "--debug") } - if config.Signposts { - args = append(args, "--signposts") + if config.Backtrace { + args = append(args, "--backtrace") } - if config.Timezone != "" { - args = append(args, "--timezone", config.Timezone) + if config.Signpost { + args = append(args, "--signpost") } - start := config.Start - if startFrom != "" { - start = startFrom + if config.Unreliable { + args = append(args, "--unreliable") + } + if config.MachContinuousTime { + args = append(args, "--mach-continuous-time") + } + if config.Start != "" { + args = append(args, "--start", config.Start) } - if start != "" { - args = append(args, "--start", start) + if config.End != "" { + args = append(args, "--end", config.End) } - return exec.CommandContext(ctx, "log", args...), nil + return args } func makeEvent(timestamp time.Time, message string) beat.Event { diff --git a/x-pack/filebeat/input/unifiedlogs/metrics.go b/x-pack/filebeat/input/unifiedlogs/metrics.go index fdce924fbb8..20e168960cb 100644 --- a/x-pack/filebeat/input/unifiedlogs/metrics.go +++ b/x-pack/filebeat/input/unifiedlogs/metrics.go @@ -7,16 +7,11 @@ package unifiedlogs import ( - "github.com/rcrowley/go-metrics" - "github.com/elastic/elastic-agent-libs/monitoring" - "github.com/elastic/elastic-agent-libs/monitoring/adapter" ) type inputMetrics struct { - intervalEvents metrics.Sample // histogram of the total events per interval - intervals *monitoring.Uint // total number of intervals executed - errs *monitoring.Uint // total number of errors + errs *monitoring.Uint // total number of errors } func newInputMetrics(reg *monitoring.Registry) *inputMetrics { @@ -25,13 +20,8 @@ func newInputMetrics(reg *monitoring.Registry) *inputMetrics { } out := &inputMetrics{ - intervals: monitoring.NewUint(reg, "unifiedlogs_interval_total"), - errs: monitoring.NewUint(reg, "unifiedlogs_errors_total"), - intervalEvents: metrics.NewUniformSample(1024), + errs: monitoring.NewUint(reg, "unifiedlogs_errors_total"), } - _ = adapter.GetGoMetrics(reg, "unifiedlogs_interval_events", adapter.Accept). - GetOrRegister("histogram", metrics.NewHistogram(out.intervalEvents)) - return out } From b521d6b9813e50ff6b96dd9360398f5f3b46695b Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Mon, 2 Dec 2024 14:45:41 +0100 Subject: [PATCH 07/13] Add docs and fix resuming from interrupted backfilling --- CHANGELOG.next.asciidoc | 1 + filebeat/docs/filebeat-options.asciidoc | 3 + .../docs/inputs/input-unifiedlogs.asciidoc | 189 ++++++++++++++++++ x-pack/filebeat/input/unifiedlogs/input.go | 86 +++++--- x-pack/filebeat/input/unifiedlogs/metrics.go | 2 +- 5 files changed, 251 insertions(+), 30 deletions(-) create mode 100644 x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc diff --git a/CHANGELOG.next.asciidoc b/CHANGELOG.next.asciidoc index ad1ead233ac..f6747ad53e7 100644 --- a/CHANGELOG.next.asciidoc +++ b/CHANGELOG.next.asciidoc @@ -344,6 +344,7 @@ https://github.com/elastic/beats/compare/v8.8.1\...main[Check the HEAD diff] - Add ability to remove request trace logs from http_endpoint input. {pull}40005[40005] - Add ability to remove request trace logs from entityanalytics input. {pull}40004[40004] - Update CEL mito extensions to v1.16.0. {pull}41727[41727] +- Add `unifiedlogs` input for MacOS. {pull}41791[41791] *Auditbeat* diff --git a/filebeat/docs/filebeat-options.asciidoc b/filebeat/docs/filebeat-options.asciidoc index 3b1d274d59b..5e77999a00b 100644 --- a/filebeat/docs/filebeat-options.asciidoc +++ b/filebeat/docs/filebeat-options.asciidoc @@ -95,6 +95,7 @@ You can configure {beatname_uc} to use the following inputs: * <<{beatname_lc}-input-syslog>> * <<{beatname_lc}-input-tcp>> * <<{beatname_lc}-input-udp>> +* <<{beatname_lc}-input-unifiedlogs>> * <<{beatname_lc}-input-unix>> * <<{beatname_lc}-input-winlog>> @@ -158,6 +159,8 @@ include::inputs/input-tcp.asciidoc[] include::inputs/input-udp.asciidoc[] +include::../../x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc[] + include::inputs/input-unix.asciidoc[] include::inputs/input-winlog.asciidoc[] diff --git a/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc b/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc new file mode 100644 index 00000000000..d3ab85dcea5 --- /dev/null +++ b/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc @@ -0,0 +1,189 @@ +[role="xpack"] + +:type: unifiedlogs + +[id="{beatname_lc}-input-{type}"] +=== Unified Logs input + +++++ +Unified Logs +++++ + +beta[] + +NOTE: Only available for MacOS. + +The unified logging system provides a comprehensive and performant API to capture +telemetry across all levels of the system. This system centralizes the storage of +log data in memory and on disk, rather than writing that data to a text-based log file. + +The input interacts with the `log` command-line tool to provide access to the events. +It can process events in some different ways: + +- Streaming new, incoming events. This is the default. +- Start processing events from a start date. This happens when the input is restarted, +or when a specific start date is provided. +- Start processing events since the beginning of time, by setting the `backill` option. + +Alternatively, it can also do one off operations, such as: + +- Stream events contained in a `.logarchive` file. +- Stream events contained in a `.tracev3` file. +- Stream events in a specific time span, by providing a specific end date. + +After this one off operations complete, the input will stop. + +Other configuration options can be specified to filter what events to process. + +NOTE: The input can cause some duplicated events when backfilling and/or +restarting. This is caused by how the underlying fetching method works and +should be taken into account when using the input. + +Example configuration: + +Process all old and new logs: + +["source","yaml",subs="attributes"] +---- +{beatname_lc}.inputs: +- type: unifiedlogs + id: unifiedlogs-id + enabled: true + predicate: + - 'process == "loginwindow" && sender == "Security"' + - 'process == "logind"' + - 'process == "sudo"' + backfill: true +---- + +Process logs with predicate filters: + +["source","yaml",subs="attributes"] +---- +{beatname_lc}.inputs: +- type: unifiedlogs + id: unifiedlogs-id + enabled: true + predicate: + # Captures keychain.db unlock events + - 'process == "loginwindow" && sender == "Security"' + # Captures user login events + - 'process == "logind"' + # Captures command line activity run with elevated privileges + - 'process == "sudo"' +---- + +==== Configuration options + +The `unifiedlogs` input supports the following configuration options plus the +<<{beatname_lc}-input-{type}-common-options>> described later. + +[float] +==== `archive_file` + +Display events stored in the given archive. +The archive must be a valid log archive bundle with the suffix `.logarchive`. + +[float] +==== `trace_file` + +Display events stored in the given `.tracev3` file. +In order to be decoded, the file must be contained within a valid `.logarchive` + +[float] +==== `start` + +Shows content starting from the provided date. +The following date/time formats are accepted: +`YYYY-MM-DD`, `YYYY-MM-DD HH:MM:SS`, `YYYY-MM-DD HH:MM:SSZZZZZ`. + +[float] +==== `end` + +Shows content up to the provided date. +The following date/time formats are accepted: +`YYYY-MM-DD`, `YYYY-MM-DD HH:MM:SS`, `YYYY-MM-DD HH:MM:SSZZZZZ`. + +[float] +==== `predicate` + +Filters messages using the provided predicate based on NSPredicate. +A compound predicate or multiple predicates can be provided as a list. + +For detailed information on the use of predicate based filtering, +please refer to the https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Predicates/Articles/pSyntax.html[Predicate Programming Guide]. + +[float] +==== `process` + +A list of the processes on which to operate. It accepts a PID or process name. + +[float] +==== `source` + +Include symbol names and source line numbers for messages, if available. +Default: `false`. + +[float] +==== `info` + +Disable or enable info level messages. +Default: `false`. + +[float] +==== `debug` + +Disable or enable debug level messages. +Default: `false`. + +[float] +==== `backtrace` + +Disable or enable display of backtraces. +Default: `false`. + +[float] +==== `signpost` + +Disable or enable display of signposts. +Default: `false`. + +[float] +==== `unreliable` + +Annotate events with whether the log was emitted unreliably. +Default: `false`. + +[float] +==== `mach_continuous_time` + +Use mach continuous time timestamps rather than walltime. +Default: `false`. + +[float] +==== `backfill` + +If set to true the input will process all available logs since the beginning +of time the first time it starts. +Default: `false`. + + +[id="{beatname_lc}-input-{type}-common-options"] +include::../../../../filebeat/docs/inputs/input-common-options.asciidoc[] + +[float] +=== Metrics + +This input exposes metrics under the <>. +These metrics are exposed under the `/inputs/` path. They can be used to +observe the activity of the input. + +You must assign a unique `id` to the input to expose metrics. + +[options="header"] +|======= +| Metric | Description +| `errors_total` | Total number of errors. +|======= + +:type!: diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index 3daf7a3c0fa..6e8c9a62e2e 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -14,8 +14,11 @@ import ( "io" "os/exec" "sync" + "sync/atomic" "time" + "golang.org/x/sync/errgroup" + v2 "github.com/elastic/beats/v7/filebeat/input/v2" inputcursor "github.com/elastic/beats/v7/filebeat/input/v2/input-cursor" "github.com/elastic/beats/v7/libbeat/beat" @@ -25,7 +28,6 @@ import ( "github.com/elastic/elastic-agent-libs/logp" "github.com/elastic/elastic-agent-libs/mapstr" "github.com/elastic/go-concert/ctxtool" - "golang.org/x/sync/errgroup" ) const ( @@ -120,34 +122,12 @@ func (input *input) Run(ctxt v2.Context, src inputcursor.Source, resumeCursor in return input.runWithMetrics(stdCtx, pub, log) } -// wrappedPublisher wraps a publisher and stores the first published event date. -// this is required in order to backfill the events when we start a streaming command. -type wrappedPublisher struct { - once sync.Once - done chan struct{} - firstProcessedTime time.Time - inner inputcursor.Publisher -} - -func (pub *wrappedPublisher) Publish(event beat.Event, cursor interface{}) error { - pub.once.Do(func() { - pub.firstProcessedTime = cursor.(time.Time) - close(pub.done) - }) - return pub.inner.Publish(event, cursor) -} - -// getFfirstProcessedTime will block until there is a value set for firstProcessedTime. -func (pub *wrappedPublisher) getFfirstProcessedTime() time.Time { - <-pub.done - return pub.firstProcessedTime -} - func (input *input) runWithMetrics(ctx context.Context, pub inputcursor.Publisher, log *logp.Logger) error { - wrappedPub := &wrappedPublisher{ - done: make(chan struct{}), - inner: pub, - } + // we create a wrapped publisher for the streaming go routine. + // It will notify the backfilling goroutine with the end date of the + // backfilling period and avoid updating the stored date to resume + // until backfilling is done. + wrappedPub := newWrappedPublisher(!input.mustBackfill(), pub) var g errgroup.Group // we start the streaming command in the background @@ -163,13 +143,18 @@ func (input *input) runWithMetrics(ctx context.Context, pub inputcursor.Publishe if input.mustBackfill() { g.Go(func() error { if input.mustStream() { - t := wrappedPub.getFfirstProcessedTime() + t := wrappedPub.getFirstProcessedTime() // The time resolution of the log tool is microsecond, while it only // accepts second resolution as an end parameter. // To avoid potentially losing data we move the end forward one second, // since it is preferable to have some duplicated events. t = t.Add(time.Second) input.End = t.Format(cursorDateLayout) + + // to avoid race conditions updating the cursor, and to be able to + // resume from the oldest point in time, we only update cursor + // from the streaming gorouting once backfilling is done. + defer wrappedPub.startUpdatingCursor() } logCmd := newLogShowCmd(ctx, input.config) err := input.runLogCmd(logCmd, pub, log) @@ -266,6 +251,49 @@ func (input *input) processLogs(stdout io.Reader, pub inputcursor.Publisher, log return nil } +// wrappedPublisher wraps a publisher and stores the first published event date. +// this is required in order to backfill the events when we start a streaming command. +type wrappedPublisher struct { + firstTimeOnce sync.Once + firstTimeC chan struct{} + firstProcessedTime time.Time + + updateCursor *atomic.Bool + + inner inputcursor.Publisher +} + +func newWrappedPublisher(updateCursor bool, inner inputcursor.Publisher) *wrappedPublisher { + var atomicUC atomic.Bool + atomicUC.Store(updateCursor) + return &wrappedPublisher{ + firstTimeC: make(chan struct{}), + updateCursor: &atomicUC, + inner: inner, + } +} + +func (pub *wrappedPublisher) Publish(event beat.Event, cursor interface{}) error { + pub.firstTimeOnce.Do(func() { + pub.firstProcessedTime = cursor.(time.Time) + close(pub.firstTimeC) + }) + if !pub.updateCursor.Load() { + cursor = nil + } + return pub.inner.Publish(event, cursor) +} + +// getFirstProcessedTime will block until there is a value set for firstProcessedTime. +func (pub *wrappedPublisher) getFirstProcessedTime() time.Time { + <-pub.firstTimeC + return pub.firstProcessedTime +} + +func (pub *wrappedPublisher) startUpdatingCursor() { + pub.updateCursor.Store(true) +} + func loadCursor(c inputcursor.Cursor, log *logp.Logger) (string, error) { if c.IsNew() { return "", nil diff --git a/x-pack/filebeat/input/unifiedlogs/metrics.go b/x-pack/filebeat/input/unifiedlogs/metrics.go index 20e168960cb..2e24c0b4121 100644 --- a/x-pack/filebeat/input/unifiedlogs/metrics.go +++ b/x-pack/filebeat/input/unifiedlogs/metrics.go @@ -20,7 +20,7 @@ func newInputMetrics(reg *monitoring.Registry) *inputMetrics { } out := &inputMetrics{ - errs: monitoring.NewUint(reg, "unifiedlogs_errors_total"), + errs: monitoring.NewUint(reg, "errors_total"), } return out From 977b0e2dc09064b6126a1e173d0b2964d3d253d4 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Mon, 2 Dec 2024 15:45:11 +0100 Subject: [PATCH 08/13] Fix doc config example --- x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc | 4 ---- 1 file changed, 4 deletions(-) diff --git a/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc b/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc index d3ab85dcea5..9fa187c5e9d 100644 --- a/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc +++ b/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc @@ -49,10 +49,6 @@ Process all old and new logs: - type: unifiedlogs id: unifiedlogs-id enabled: true - predicate: - - 'process == "loginwindow" && sender == "Security"' - - 'process == "logind"' - - 'process == "sudo"' backfill: true ---- From c20d5583e6744dcafa93dc34d86b4249bd4c06f5 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Wed, 4 Dec 2024 10:16:44 +0100 Subject: [PATCH 09/13] Add first unit tests --- x-pack/filebeat/input/unifiedlogs/input.go | 10 +- .../filebeat/input/unifiedlogs/input_test.go | 152 ++++++++++++++++++ 2 files changed, 157 insertions(+), 5 deletions(-) create mode 100644 x-pack/filebeat/input/unifiedlogs/input_test.go diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index 6e8c9a62e2e..6e0187fe509 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -136,7 +136,7 @@ func (input *input) runWithMetrics(ctx context.Context, pub inputcursor.Publishe if input.mustStream() { g.Go(func() error { logCmd := newLogStreamCmd(ctx, input.commonConfig) - return input.runLogCmd(logCmd, wrappedPub, log) + return input.runLogCmd(ctx, logCmd, wrappedPub, log) }) } @@ -157,7 +157,7 @@ func (input *input) runWithMetrics(ctx context.Context, pub inputcursor.Publishe defer wrappedPub.startUpdatingCursor() } logCmd := newLogShowCmd(ctx, input.config) - err := input.runLogCmd(logCmd, pub, log) + err := input.runLogCmd(ctx, logCmd, pub, log) if !input.mustStream() { log.Debugf("finished processing events, stopping") } @@ -181,7 +181,7 @@ func (input *input) mustBackfill() bool { return input.Backfill || input.ArchiveFile != "" || input.TraceFile != "" || input.Start != "" || input.End != "" } -func (input *input) runLogCmd(logCmd *exec.Cmd, pub inputcursor.Publisher, log *logp.Logger) error { +func (input *input) runLogCmd(ctx context.Context, logCmd *exec.Cmd, pub inputcursor.Publisher, log *logp.Logger) error { outpipe, err := logCmd.StdoutPipe() if err != nil { return fmt.Errorf("get stdout pipe: %w", err) @@ -203,8 +203,8 @@ func (input *input) runLogCmd(logCmd *exec.Cmd, pub inputcursor.Publisher, log * } stderrBytes, _ := io.ReadAll(errpipe) - if err := logCmd.Wait(); err != nil { - return fmt.Errorf("log command exited with an error: %w, %q", err, string(stderrBytes)) + if err := logCmd.Wait(); err != nil && ctx.Err() == nil { + return fmt.Errorf("%q exited with an error: %w, %q", logCmd, err, string(stderrBytes)) } return nil diff --git a/x-pack/filebeat/input/unifiedlogs/input_test.go b/x-pack/filebeat/input/unifiedlogs/input_test.go new file mode 100644 index 00000000000..bcf7f428925 --- /dev/null +++ b/x-pack/filebeat/input/unifiedlogs/input_test.go @@ -0,0 +1,152 @@ +// Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one +// or more contributor license agreements. Licensed under the Elastic License; +// you may not use this file except in compliance with the Elastic License. + +//go:build darwin + +package unifiedlogs + +import ( + "bufio" + "bytes" + "context" + "strings" + "sync" + "testing" + "time" + + "github.com/stretchr/testify/assert" + + inputcursor "github.com/elastic/beats/v7/filebeat/input/v2/input-cursor" + "github.com/elastic/beats/v7/libbeat/beat" + "github.com/elastic/elastic-agent-libs/logp" +) + +var _ inputcursor.Publisher = (*publisher)(nil) + +type publisher struct { + m sync.Mutex + + events []beat.Event + cursors []*time.Time +} + +func (p *publisher) Publish(e beat.Event, cursor interface{}) error { + p.m.Lock() + defer p.m.Unlock() + + p.events = append(p.events, e) + var c *time.Time + if cursor != nil { + cv := cursor.(time.Time) + c = &cv + } + p.cursors = append(p.cursors, c) + return nil +} + +func TestInput(t *testing.T) { + testCases := []struct { + name string + cfg config + timeUntilClose time.Duration + assertFunc func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) + expectedLogStreamCmd string + expectedLogShowCmd string + expectedRunErrorMsg string + }{ + { + name: "Default stream", + cfg: config{}, + timeUntilClose: time.Second, + expectedLogStreamCmd: "/usr/bin/log stream --style ndjson", + assertFunc: func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) { + assert.NotEmpty(collect, events) + assert.NotEmpty(collect, cursors) + assert.Equal(collect, len(events), len(cursors)) + lastEvent := events[len(events)-1] + lastCursor := cursors[len(cursors)-1] + assert.EqualValues(collect, &lastEvent.Timestamp, lastCursor) + }, + }, + { + name: "Archive not found", + cfg: config{ + showConfig: showConfig{ + ArchiveFile: "notfound.logarchive", + }, + }, + timeUntilClose: time.Second, + expectedLogShowCmd: "/usr/bin/log show --style ndjson --archive notfound.logarchive", + expectedRunErrorMsg: "\"/usr/bin/log show --style ndjson --archive notfound.logarchive\" exited with an error: exit status 64", + }, + } + + for _, tc := range testCases { + tc := tc + t.Run(tc.name, func(t *testing.T) { + _, cursorInput := newCursorInput(tc.cfg) + input := cursorInput.(*input) + + ctx, cancel := context.WithCancel(context.Background()) + + pub := &publisher{} + log, buf := logp.NewInMemory("unifiedlogs_test", logp.JSONEncoderConfig()) + + var wg sync.WaitGroup + wg.Add(1) + go func(t *testing.T) { + defer wg.Done() + err := input.runWithMetrics(ctx, pub, log) + if tc.expectedRunErrorMsg == "" { + assert.NoError(t, err) + } else { + assert.ErrorContains(t, err, tc.expectedRunErrorMsg) + } + }(t) + + time.AfterFunc(tc.timeUntilClose, cancel) + wg.Wait() + + assert.EventuallyWithT(t, + func(collect *assert.CollectT) { + assert.Equal(collect, tc.expectedLogStreamCmd, filterLogStreamLogline(buf.Bytes())) + assert.Equal(collect, tc.expectedLogShowCmd, filterLogShowLogline(buf.Bytes())) + if tc.assertFunc != nil { + tc.assertFunc(collect, pub.events, pub.cursors) + } + }, + 10*time.Second, time.Second, + ) + }) + } +} + +const cmdStartPrefix = "exec command start: " + +func filterLogStreamLogline(buf []byte) string { + const cmd = "/usr/bin/log stream" + return filterLogCmdLine(buf, cmd) +} + +func filterLogShowLogline(buf []byte) string { + const cmd = "/usr/bin/log show" + return filterLogCmdLine(buf, cmd) +} + +func filterLogCmdLine(buf []byte, cmdPrefix string) string { + scanner := bufio.NewScanner(bytes.NewBuffer(buf)) + for scanner.Scan() { + text := scanner.Text() + parts := strings.Split(text, "\t") + if len(parts) != 4 { + continue + } + + cmd := strings.TrimPrefix(parts[3], cmdStartPrefix) + if strings.HasPrefix(cmd, cmdPrefix) { + return cmd + } + } + return "" +} From 0f73a096907c9e043969cdb79dca78c748af9da3 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Wed, 4 Dec 2024 13:58:53 +0100 Subject: [PATCH 10/13] wip tests --- .../filebeat/input/unifiedlogs/input_test.go | 157 +++++++++++++++++- .../testdata/test.logarchive.tar.gz | Bin 0 -> 349382 bytes 2 files changed, 155 insertions(+), 2 deletions(-) create mode 100644 x-pack/filebeat/input/unifiedlogs/testdata/test.logarchive.tar.gz diff --git a/x-pack/filebeat/input/unifiedlogs/input_test.go b/x-pack/filebeat/input/unifiedlogs/input_test.go index bcf7f428925..51283c4cebf 100644 --- a/x-pack/filebeat/input/unifiedlogs/input_test.go +++ b/x-pack/filebeat/input/unifiedlogs/input_test.go @@ -10,12 +10,17 @@ import ( "bufio" "bytes" "context" + "fmt" + "os" + "os/exec" + "path" "strings" "sync" "testing" "time" "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" inputcursor "github.com/elastic/beats/v7/filebeat/input/v2/input-cursor" "github.com/elastic/beats/v7/libbeat/beat" @@ -46,6 +51,10 @@ func (p *publisher) Publish(e beat.Event, cursor interface{}) error { } func TestInput(t *testing.T) { + archivePath, err := openArchive() + require.NoError(t, err) + t.Cleanup(func() { os.RemoveAll(archivePath) }) + testCases := []struct { name string cfg config @@ -80,6 +89,113 @@ func TestInput(t *testing.T) { expectedLogShowCmd: "/usr/bin/log show --style ndjson --archive notfound.logarchive", expectedRunErrorMsg: "\"/usr/bin/log show --style ndjson --archive notfound.logarchive\" exited with an error: exit status 64", }, + { + name: "Archived file", + cfg: config{ + showConfig: showConfig{ + ArchiveFile: archivePath, + }, + }, + timeUntilClose: time.Second, + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s", archivePath), + assertFunc: eventsAndCursorAssertN(462), + }, + { + name: "Trace file", + cfg: config{ + showConfig: showConfig{ + TraceFile: path.Join(archivePath, "logdata.LiveData.tracev3"), + }, + }, + timeUntilClose: time.Second, + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --file %s", path.Join(archivePath, "logdata.LiveData.tracev3")), + assertFunc: eventsAndCursorAssertN(7), + }, + { + name: "With start date", + cfg: config{ + showConfig: showConfig{ + ArchiveFile: archivePath, + Start: "2024-12-04 13:46:00+0200", + }, + }, + timeUntilClose: time.Second, + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --start 2024-12-04 13:46:00+0200", archivePath), + assertFunc: eventsAndCursorAssertN(314), + }, + { + name: "With start and end dates", + cfg: config{ + showConfig: showConfig{ + ArchiveFile: archivePath, + Start: "2024-12-04 13:45:00+0200", + End: "2024-12-04 13:46:00+0200", + }, + }, + timeUntilClose: time.Second, + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --start 2024-12-04 13:45:00+0200 --end 2024-12-04 13:46:00+0200", archivePath), + assertFunc: eventsAndCursorAssertN(149), + }, + { + name: "With end date", + cfg: config{ + showConfig: showConfig{ + ArchiveFile: archivePath, + End: "2024-12-04 13:46:00+0200", + }, + }, + timeUntilClose: time.Second, + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --end 2024-12-04 13:46:00+0200", archivePath), + assertFunc: eventsAndCursorAssertN(462), + }, + { + name: "With predicate", + cfg: config{ + showConfig: showConfig{ + ArchiveFile: archivePath, + }, + commonConfig: commonConfig{ + Predicate: []string{ + `processImagePath == "\/kernel"`, + }, + }, + }, + timeUntilClose: time.Second, + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --predicate sender = 'Security'", archivePath), + assertFunc: eventsAndCursorAssertN(460), + }, + { + name: "With process", + cfg: config{ + showConfig: showConfig{ + ArchiveFile: archivePath, + }, + commonConfig: commonConfig{ + Process: []string{""}, + }, + }, + timeUntilClose: time.Second, + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --process 617", archivePath), + assertFunc: eventsAndCursorAssertN(462), + }, + { + name: "With optional flags", + cfg: config{ + showConfig: showConfig{ + ArchiveFile: archivePath, + }, + commonConfig: commonConfig{ + Info: true, + Debug: true, + Backtrace: true, + Signpost: true, + MachContinuousTime: true, + }, + }, + timeUntilClose: time.Second, + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --info --debug --backtrace --signpost --mach-continuous-time", archivePath), + assertFunc: eventsAndCursorAssertN(4081), + }, } for _, tc := range testCases { @@ -105,7 +221,12 @@ func TestInput(t *testing.T) { } }(t) - time.AfterFunc(tc.timeUntilClose, cancel) + select { + case <-ctx.Done(): + case <-time.After(tc.timeUntilClose): + } + + cancel() wg.Wait() assert.EventuallyWithT(t, @@ -116,7 +237,7 @@ func TestInput(t *testing.T) { tc.assertFunc(collect, pub.events, pub.cursors) } }, - 10*time.Second, time.Second, + 30*time.Second, time.Second, ) }) } @@ -150,3 +271,35 @@ func filterLogCmdLine(buf []byte, cmdPrefix string) string { } return "" } + +func eventsAndCursorAssertN(n int) func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) { + return func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) { + assert.Equal(collect, n, len(events)) + assert.Equal(collect, n, len(cursors)) + lastEvent := events[len(events)-1] + lastCursor := cursors[len(cursors)-1] + assert.EqualValues(collect, &lastEvent.Timestamp, lastCursor) + } +} + +func openArchive() (string, error) { + return extractTarGz(path.Join("testdata", "test.logarchive.tar.gz")) +} + +func extractTarGz(tarGzPath string) (string, error) { + // Create a temporary directory + tempDir, err := os.MkdirTemp("", "extracted-*") + if err != nil { + return "", fmt.Errorf("failed to create temporary directory: %v", err) + } + + // Use the 'tar' command to extract the .tar.gz file + cmd := exec.Command("tar", "-xzf", tarGzPath, "-C", tempDir) + + // Run the command + if err := cmd.Run(); err != nil { + return "", fmt.Errorf("failed to extract .tar.gz: %v", err) + } + + return path.Join(tempDir, "test.logarchive"), nil +} diff --git a/x-pack/filebeat/input/unifiedlogs/testdata/test.logarchive.tar.gz b/x-pack/filebeat/input/unifiedlogs/testdata/test.logarchive.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..fc507f9b1e9e4365457a6ca42ffcae3df4db9da7 GIT binary patch literal 349382 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�|^wT|!A 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΄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%0A4U?1{u*l9&NM1aX9{G}}>LcH$=u{|! z`a;ESg<{a9v0Gpl1o^!RAx52C2m|4AS|&!DU!(?Zs?7A-3O}^1;4TVXa`O4QL~+>h zdOZIyKCT2Yls=qk*+=P)`Z14(+3!>Qy(k3EVe1)3q*vjFdXK7KPJpS7ElJ%l;27mPlURyY}OM)3FNE)l=Z&5_z-^`39^ell!w^n}2I6mmKYyOe#{@5W6wWvSnM{ zp)rYV;rH)pRJ=mt`|TqlyF*)`Hy9erzezBp3QUv-m(_Zh)YNl84!p%3gYtkqaY;2H zJ+hB{%VY1GQV;XMkpJmsY_yFb)Lr<0& z4l0d|#U|~NO=$j`u#YCLms2~x)a$7bqk$4qdj#H`z-?nCA)8-77YM0fGcAQZDu_T; z!JV%-iUt}j^xvqF=h>^U7?_Y&;QwV)M<;h4AgWy>X#Dk2LN8lOG4CddS9kOaC+q4* zqS*o9W zP8J)`J!|Rce9Ha&fsrTBfi8}^Zym)#HZB_fxt#b}Vy1o=vzYWUy}#6%Khro^WT_6>tY59qve|JKzcUBmQtC;B&bH zycHh35~Ez?GK3+We@1&=-X1VEVwCUl;e$DfSJ12-+bhwWM{aIZ>>JKf6o#B7>Y?~! z7RMLQxMGL{QP9zv5V!AGpN4&bL5zw*?00*pK1Ds=ZjaO-?!Y^m0W?}dLGPwKc5i8yK1#kHO0$zkFr`EY%Fj ztRe?iktm6-V({CN;sNGadJ_ozOjaB{h)%haV*D)b{EnF!b*D31M|1QDc0ItdgD>gL zxyqo>KD5B!n|M%+VF^d}U^ZS*3SGYtM7;dD1Gy^*SVB$bd?h>{$4|l;l}I??y=B{DwF6tYh?%j72B8 z)jK;xXNzo0dLoB@0J&j5Pvz~W(gPxT^vD*UJ~F_uHKb2hwggijRA!f4>CcvM!Im+vg64 z@hl|L*&PT*eE#-!x4$bAbh$gb0`7oR05}?kJH-@G?~EF+)A=lDE?i0*sq%lRc%5TFKa! zb&R_$~>0tvAj3601g^oO5~;6_otI_knf3OZ!)J2+pWNlP&1WIks_!< zdgzE^6-+EFwjmr`epf^Acg*&U=RI~Dj3L^Jqa){RAHRQE@O~`2bbEY!vnrW9FQ2Uu zMj+69OcN5^A>W^4BLpjOcox>77aGs$7AIt%HXDOtBbqnIipR0$m@* z$?Hzz%|E2$B41TFzVe%L57zWZPbp6wjzV$V7|O8|)Nue90~~)b1Jnoj6c(>zBM=j$ z0JunbZyX8ME;=!l`qP;fL4wJ3fV8qHiF+7us&qi;00w8I@a7`#PmC+Tda}~mmYQKJ zh1*JK<_p(zzIqo1E;c$5haJh*g*;x-l;l1%o4*4S#fS`lpPuZdC{WRzX%O2S*@$RxEV!cZb(quF|dQO|Aynn9%kJS6Q`$8BP- z)IAF5N$yIvlU^?$IFKAK#23n_!ps#0a8>1_NLT=)%x|6^LC&Z6-YemI8jU&FjVcg4 zqu}>afqwFEN<_f8hXU!^k2=%T9-*;KNMzDu%x|It9c`ya_lxK%22w#F-@6Ij4kB1C zGm+&grakmVssK=|F!g;%1!+9nouUq&6&ECjhNvT&x=3DYaJXZ!zyr%uDg94seRu-JKtYLz z{pMe@=>V{_BN!Tv3f=;q&WrIC(tJa5$@$5RL~~fMw{I}7@F`msl6e7x$H`YHFuF43 z2TOwdiWza=1e(TE4ZD~_W+Wxjg4|Ay>4t=Kf+mWryT#_Wt7EXIMWA=bftv6DY(1Sk z_9$-DRC1KA$#Iys#z|gaJeyJyc0ab+$x(VefOT&OzyO#kbSiBSrp}9pwC-ZS`dejUkFUQb2z7FS9*c=hw%N9DKfL$;; zCJl1V)HRe1VP0=q7$X2XmF6gy3zb;G)TPM?b$mW;Wjw}Yk?Qz{p00wSo&lC6)ud#i z&ok5y(sQO4+wDU}q(xF=*65+JU1VLlB&3bcBR^6bjQ59y_BG5{9RA1ikrEPrj5j7TIp% zPKzjhPfy_Dj|^_Y6F9L8=5Yq$>LP2vzq=8A4+gkV=*)_*AuNvw#yO#(5_= z@1w#%P_B|Felsb$m;0*%lV*EHpvwGj1qo=JMkJ&g7R!_fk0PD1EYIc<4<-5uZH6_d z9!CdJRmccEOK(73W`~xL)apMtVYFFHbDYCXDQj4 zK@E($2Q0qsfua*Fa9X46qvBi=U*G?~;E|>qE0BO;$rPO|+!*R!(xAiaBv>*^mH7P< z+mF2u^ARpYv)ObkNhM!tfXT+Zx0$9k?wW|SgU&0 z-$c9GHZ}cl2%X8S)D*ILAQ_{FEy{4kV2q&-IvWngUs2qYfB_e>k|%uu;|Kz?N0mwx zOJ>>JAw?6qSSPVB*k>+{sL&E@Ro)>1&tIj0({b6RtVIjWY;9nD&j7v`kjp?XV{4%( zIzc!n=CQq5%BCa43_yVuQ$P<;mNf+nk}f<&&$_io5Sa}CP}vx8j`(Vl z!n!w&;eFE+dq!j%D&%N$stVMd05l;@5JoJ-A*GFLp@9o!VgzGDVMvGh4OGg*BT3ed zGwO+f@S&QMuJ)2cJ`=zh&NH5M${oNvx6^h&)9LX{dJkUQDBasBA!fQ_rmiF}a(!xI zY*@@p`Jz*ITJ?sEvQe5ad{7u{-&nlF;Ecd#IweYFs76NKcZSu=Rpz~L$I zy=Njzt0vo#Vd7#sMWxb0kgD%Ro}FEDVI}x|4uPLvDIM8>yjfIwWWXI!l&%>^AUPIU zEkxs#eU2uOi&W-=6&avBT#Bzr*0nfkXGQoUgOt`SAYrJHVNI^WFE#7{Lnld6@0Nh! zdLxKd)(Cbn&W{)QKuRJ7)}#%JmPOVXYK#lARUXnCh055| zsnLVjE}>Vi1?ILDyPHdcz&FMPt<$LStfuV3&WYbzD)69EHk! zcqI(usmgK)bde1sOG=jv$ViQCPS`%|Y9bF^Kb}pkZE{UEP73${Q9!Q02c?ntTKb4r zqS4>-+QvBHur!^I0`>*RBsxh=P59^mhc8Jh=$a51)S=FS9Rp$xZBNnYj1L`aBE}4! zr54BXL(;Ltama0q({47RnuDuSC25G;Ov`$ZwL;@$vr;iWPjJo0NfnX%J0T0kFfk~j zPg!i`%9TP-Y7e}*zyn0`V4BTbNTPhOF@ZTA8%ySxB;OfP6kHO49~M&-tpIXINe$7Ey0{F_iIYR2 z9dgWZVHl%Vl7Zyd#3<9oN>=Q0_Z6*CwnZ4&yfK-R^Keut{>`G>8bOK!??9@AyGGF{ zWLFUBXJbJ%#opM1{)2>a_zHx$@%&F}cL70|mQBOB|xx+<@_%wBJ3~`kJR3mR?D62v<-gr==ye6J# z;030}c+mlws%-HgoVvtGH#amfz9$oni_~l*JD6S%@6?Z`mK2xmn-D=%gPED8-U(T$ zNk<%|I(dyE`QmD%1JQ%coEuuJ-m*$@726XZhAyC{ewreDmep+*Ezz4C#X6CJSW>4n%P&0-n(Vp&>islg80FMY@1I1j=C0_iDsf%TN&+daP;-@iuD_ae|~b zk}ol-up-@>12h01=c61-Me?3k4R_&EW8)*A-q9mP>NHSQY`TTUh7{zQu8m!TT`(qN zs3?fb2c5K=sv}8wUv+s0k?CT~)SXprVSbi1qn^>TPh_n@I$EoGEhg<9g&?n&6% z-`NiRhkc>$Y&+nUemPdCY7NOR+`Xl56TR$|6}GSM+R`OVOdt=`rg_g|8y(MQP$^2! zo^YZmPkJ)DTy+kRNuyR0?E+y#?LqMbxL1eJ(}|k`Pne-LO4}$wW!wPgWgW17CaLyU z)5!!)7O3?aAoc8oI4%0z2&`N2vut)61>@P&I6AR{51Fjgq=GzWLZ_PhmT8AXIv`~> zNPMX@HI6qoju)&}I(e!^G35*@%6%rP9UL1@vva;UI|QaexKdj)ya7h+3_(o&B{XqN=fb)19*6WdnRXv@|Xw|xTs~Ju%o|2 z;MZCN?Xg2PugpYhZwghm>Jsdo#@S)NqWNG)Zh2KzlJ<$*2ww1ELKDa0eAE*3^f)^) zMzOZ)Z6vpw_&U+N3Nm6s1B)m6Dtv;bx#8%KU)S`uejqRdXp8UxH@3K8BU9tcp_E;Wc`hKHizAhoz-su?8BEI&V? znM-+D5YtAZ8C5eNuBC80Voe}lWs}Uz8aLt?GdN)4CmGnA93NNP3sQ>@Kn4quna$I0C>@ikVST; zkye04CIZ{<(&gKH^BI0ru5ns~F^DKy;VREO1VT@JXzt{AtN`hp9I_F)u?pZ7)s~;G z1yPpPu?__Zs-c-7N8Vy8*0JIkv_u!TP?J-B`o}s*2R%!}q5~zLpf-xQBI&t1Kj)lC zQI?)tF2J}0pkunq)Th;Gxgw=g)+npu%s3($SI`-=j1{p>NR8tWI*bM@uigOEjDWs8 zumz0V2>do4)eS4T%rj|;Oy%B_8UPs#V6RnhogA@A1yF{iRbkuE^hTz;8$)_YSr1%= zEd<+&$N7U=U&m1idq8gpvKB!xjY;4g6Is8D?Md$SINruHFq$suLD0h50gYsH47@wS zEGuO5Qe@fMXr5x55=)OCWV0vN*PG52GmvGK0?LEz%mmu`Fe_8^Cq;jcMNyUzSsjRP z<>sUwqAi$%w^5{j4q+=@1yT;J1n;;|(WXsX5VNHs^iWJ)`*@mN2A0&xnAr^L>s&U1 z4*oVdaSz5j&nkWGklaNm2KC58vPJDcPZr`ZtPHwPl$D+yX6Dod_QZM82OW#7q9~RU zl&y>xYcUa1B)ecoNpR84yWIU$EHh{B~-mzsz=dxMG=#5ejX&h%cuq9 zs>wXi+-M65EbLeymr*?ot8<1`IeF#fgBN=DO`x7}1g;Zp%x@|t>xi?XqBt&$(0dA) ziAr@of{@rj)6nw+=i9TfOmtiV$fft}8C85J;8N!|=XyF@;6+)DEjXzdHx@0B6t}SS z8WC#yGLGVXq$G7yG`m;e{^(lhJTxK6;QzxgjcT4V`Om|e{Nen3Vt*G8aK^_xhTGq_YJ$hJh~bbhKaqe>*gIKx7ns4AZcEER?%|1mSH z9B)!?fr*Naw%`TRnUtbo{H7aM1e$hOnctlBcnh9rY=jY=S@Y>}>W~2BOj@u7WQG3p zj9yssM$X3Q z7AZq`+-`F!NL9EG33>+gQ^MqNga0Qo^_rh-OvRsh|2e*f0U#-0vj(NgF?n3E&mn#eja$DK`~69ASDOdj=$ zfVx_|WP+41!969k>TSi2cxZGDV9s;hRH;G- zMK}Nw(;g-OCz$dCg&MB(27W4;9cgB%Z@4aCrDj}(=I$7BjjSu|eVdv64Ae7D(7#&; z-ZEC*FkyyCqwH!0?E_`@kr|2;%JI^B$--FNuUs!2lP^B0q4PiOc}J&`>jgX@QrkK0 zr=~v41=xTbFFqquKU=_*D$c-8zCKBu#!Xw`RO}7Zw=s=!j8xNL8b$I9WdMXFYX!H% z1-xlOu77}=Uc{4on1>cB^}~ff5*-(txYhm`q+uP+=&5d8 z)KsT3p_oYF`9278SVF#UNu?4r07TS9GPl(fXOgXE|&bqS8HYX8kG-P>PL!`W^_^7NycDdt!7V z85gL__-LMkAN9crb?1RM8-(TQiQIC5Mc`(JB$6NLZuKz_JC`T`)EaE+CN1soEh80$?nVz&(n9U_UxK4rnREjqX~6HI0*Js^GbXbV~RZ zA)QI?Ndl^T7b-du%>o)jC(Z$s2jdT^2QW+<%VGWw*>BDa!MEg=2@%#gXXd>xH!Gc{ z16fvjd1H2Yvm$)6$2ZjpNjWKTPBG~dgVPM zcn2C)SIeo59YbPv_)2B%Qv7wQkaj5Z)79JABGt78&)pNrJ!=2KyniJjRA$K15X;w` z<7$h(3BDflbzt(cVAiKp-@{&2W-(RkL3MJh><5Vtn?Y3$HGDP|9nX%Wb9Ou$hlxbf zRA$4AMR_g2(WXM6uGxNz87qiZb7*AE>BuAwRz4Q+o^-5EXUuFwxZwaZ`cB|A|# zpww>q;E*J*4$%vjYKw*zRM#mVExZ(OwxCF!+Id1-9tMv&&1`Cn=QYuvW@p)|gFrUV z4obb*`YpM82wI7cq3*t5aq=cQq&s&sG>L%X7}LhKXKBbht(&mz=uk5!F`!WiNZ!!B zX;tEgI2td!k(;-SfqxUDS$^A;I~KEHm=av<$7ydior@RHLo`T7L9 z_@cJ+qT*ef=iv)#%4g}BFSjO_F086qFKIa!Yz0>Sr1`ZjZo;t%2()Qr5(^XAt4d;=78`TV0r{dn=W09Xxd|0`S8X1gGg3|+NP=e4b7kG=w*FWEegEB z`l#dbu`vvcJe}}Dh}zW#eM$5e4J=OfOlnkBfUb$8T8~SpOUQxX*G#RQ$J67IsW_`m zvLeB;YoWC^3j;l!Yk~1Nb2+Oo0*IK|t*GlOQh>uN^cc~aG#`r7B8dT#FMMhwQrWDP zP9MFwiI%AJnhQfU`SAJeF%~6{K4A^2G8|q8=1s&)^{Ytz{5~nw_DuaU@R1Fzl=X;b zjgnagGr-6edmqW-O!fw-u7bT`k#F@vaHD_JP`y^4BrC&L4*mFL25FJZj5_m2zsT>Kng-godhF`i;HgZLd`$ zNu|A9bgwA+iJ@I&YnPertExsPJxN(NMJ<8Udzj4l{m1yx3sZG!2ZDc?AznU=WTe|n z?TVQJ26e?ank?{oPfbwx3S&kyOae;F7xWbOI0#QiotrSqOPQWJOKubL>zDaI?jx0| z>R1>us(m{t{Y^`Lgg^YuR3E~wX%)_Z$Yabf_6wQEtf2NT&rNoiWTKDcJ+Iom_c(gfVmYF}mHQ3-mHK ztvwHzaec$cIB4OsxJtNnX>_>A_EDR}G&PRKS7hi2^zv{bwH?4qPK3*97FSY1NinR zK+B`AA6dlAhhXJP14!cos|u(98sSFAv*JJwl`!gMJQ^JaVhJEl>TC>w9WySkQF>-+ zE~OQ$T8e7l=zcEY!|g4@7tH%MGDcIMhw;nsQ=Dzl@si{#$vTm$mpYXY_ws^g@V)FH zXM&qkOQnXR8I>IhYSf3*xm?7Yl!V0rWZTaN6bX9rf^UY{y)B#QVOoqcN{JAu>n$_Z+N~b^b^0LB-I?r(k*=$^ygk~XrAeL24is~~({RNH40=rU`kWfF2 zj>omF%&`Bemv#topwM}}*F0y^xrFL^3RZFSRc<5D3rY5$qB zR*9QQFUX40nPx_!U+T+5YRZe_)A31qN=dt@x=XDg zn@UhLG|2$&eFB|UBw(czCz}uF#^i7&nmOpi0Ad5&6`r$`Ul(Xq`4%-Z(N?d|RTBk^ti-dNAx?8emARr_Mz zOelG7S37>($(`r9d!e@W&fMUteLmL#Os@>NOT9pT^)p3LmH(>wFSY;QI_f{o{&&0m zFvVK>@Akbz|4+@QhLBnCbuWKB1pf^1Z^iRJzV9CRerR<+)j^)&C?^-6IB^1h#b^l#Zkr8HO_nm~ie%dPXobiEAMszi#n!Nj4o3S4{y-_!h7@NqFxgHy7 zB}cArB9^)ZO~kqLLHzaiN#cC;Vfbb2C#^fGJDNyk-F(P(&c?K3#2J`_KaLXTiNy#% z58&rEW70ju`I?>Q-PFNdOCI%oCwc-e!$-~b-pL+A0o;E#E_)^F)Mp{v-zm*()i6?5T7!`X}P)wkZ4xvGiO zwnmp;4PVZW{Q+uiy>9k3`0$JOU=#mwGba6b{NFKY32in05GEbjcP*B@#QXo zMS#Da)kF-&_2yYmnf291((n*jZ(d(>#cv*1Z*HiWyNdMv@xT%NVNwCZ+-i8~=TM~Y zr{9`qXd<&(ztj-HiaM8_-$eAr<7Czy-zQK--L1z--`KhDdFVLNt$%4_HQ7Oq?SrYJ zlP^tZ&0Mw^{FelXW=iwmJaenqBHYuap9$Q`zqc2KgGIMYT99uO{BVr7(+24kXSr3!eoAoi=GQU|rq{A)qjA=J+ndVBzaiX`v?yvbV?99I2 zhg%H&ko~}iS3|XR`f**u<<@et_r8T^${EPiGL=NLN?D9tm~$?150XKM?eKd>z3Ka(*QW!qmKCt(FcB2xdMKF`AgjGT~?01C&%gFP3$@G8oggAj$UtO!oEmUDh5C3PAZoJ-D zM_l9S%n~x}4u*Z9U<=uZK3rPJ{tVuqOpk}iQ7N2(u=XahL}+Tk;r>tHgni*)&=>GE z&nD*tLf(*nHaXMh3(O{Vmv=T<>vsj=uQ%YDO>C1yccwoOY9e-z8xjMa@NDAn2G|4 zy^!j;U03gK=BZAf50J-V*HNh5HBV>v`fnp=hQppFtRC73crL|u;SaXk>~o*4-vsT1 z0E36aUZ`MEaFVPIhr(-Mz4*dVSAF=mge-zuogrVdPIr3XHtdT(@LA}~s2*zcUJ6Y^ z`%bKuEcUIzcWQ!P?q;1c;EBVU0#XK}^%EU*!VeU}=PK8ediNSaY}jRdS^TB9{T9m~ z(K&pq|3;ky`wu-oiano%cMgFty3APJMC!depbl@FPPf>96hT~i?1gSI^xy9H0__Ti z#tpi991a`yE`aSV4m_rFdf^pl-x^=U+*2%>8svdHlI+&V(7hV^B!i)JIs(`6`pq#8X(6J4?sH4lE zKJdkIo$cFYy6VUE&XD(}GU$U3C*h$Aef3e8@+K1jNx=Q*irN*UmMiurGr5WA=s>SU z_kk6wE0Ol-j#?Y;(U%h|ppo14HP!2Xy!@$WYN{KaZd^fH&wgdWQ&qLC&)WVlURCRK zJCTlm?>&D+%KgMu`0(#L9><5hF{JZ<`8EEneH=5sz4ZyqxFd>5zPs=*MK-OshyT<> zbjQvupq>BI_NN)q*e~BQGq^8&qd1&Ii{B=6*v0GVhyM&fl_g4*yZpiD5uZ;-XJ7Q+ z``Ksf){39{!QmhOXjkXs)6s1`9mko|S)+!|GPwRHSl_PH8LGP#=1%AIKn;#&u%@H8!oq+NjtVyMm*4NIXMxLYX5yv zDj9KwLheY=WAF64Lw29X-))a{`GfYb&)4p5kFoF-GGXaC;pJ34A3c}kfYW+pMm|p+X8#t7%|Q#{l*vdNDW?^vk!Lt zKJs9t_COJD7N*b|y;jEm=Rq`J_P{H!hZC<@v=4MnsnjKcJcvXZDmEn zj{Xk2Zm2<6d!{f~ASYkKXJu0U5 z(>^R`jZ0f+=|i4CWtnRtV6sIsD>p?@@*Lt~qFk$M+3n#TLib0e09r2Y9nBw!Gq(XhgdHoE2Eyv$b#^tWNGg}gc#ln z)N4aJnUWk)4~W@+==3{C8=53sLXPR&Vj?;m_rzRKUoJBtUPv|%p&``|bseJv6T^pf zwb>A{y-!En!vWXT#P~;Dz5B3k;gX7mwYp_?@qoV0K31*YM{Hjp<+`Y@>`UYd>8j-y zNqK8{IQB)ds&>mCb+wT{>TFl(jp48>lpwah=@(k}kQaD>DKXBRljc6Jw_T#s)w&ny zjhE=^g9pf>r4y&w)F$o3I%!xk?0c8abQ4+O z3w(-{nT)sXn@Gm?0%6$e$ZavzIeaG5PLuw61Nj80&7_I#6Htpg8vF#Q^L&idu3trL zujp{n#`X37S77f~G>q;dmgB@N2I4!3={W2<|8Zh7Z7_@3_B}90&k}&iiNy9-Qe)et zuc`4b(iy&~YprOAzKc{?{!m zFgA3hVArNoc+|fwnn^~7M{hBfyQ3lTe4X)U23wbL(MzPEYsX+$??6vq@6cI2gG1HC ze74T=tj--1gBfCaR=2?Y7hRqEM>=mqWMGat)|o~l^0dj)OX?Dr8%@2$>NU(e|IspU z%lQq1~||SY9`@ zix?gxozYAt`m^#gVN?Ctd`~Po9*to**tG(zDPS?|u9nku4e`V+2HR;mv#rOtM0Yp2 zwI8o$M911QdnTfK+Z{yjjQj5(c6TD^i4fBrWR=@(tFRrYJjXO&e>d#E2Fda5K9g;! z-n=RvT&iE-`yOe7-M{2);ypxkM=X*6@SOE_J<~{>JNc{UH5!SP_ujA3m;J(G zZ6eM`o=4XHU9UZW>V?#-2a)wZ{2Zpe+we<#xD*wI&i0ovY1wyvg-Jj889o?MIaur5 zlf{QejSu4ksYMB4Zy`%hzWVTt)O8=aV`{i>&u7)WcFXUy8eNIkTlRL5503D5m>$1h z=Fji=#g8d}tmXf;@&Vy|^Gx~mFMV_F->_ck`-p{1skc8%rAI^9)h3z$K5U`Uk?AZ({NuXCny>`9ri)2wA zi3Sod9f@8Lc$4%wc8ch;+xzC}vm5xl>xuFGhI|^mDi%29^tobzXByJHD&afFT!JiH zd&$b-;7JnYmUu9F9$Dy~mMU)${c+dBCbEOvt|iP4B+M&=o=*_#X}XehxgjQAtuwAL z!teT3G4Cv+M48)abQobg~31KBPK{dYjOEWq9$6C{PC#CCyJN{9P zhBA-E$&~u9U)$I-(qDxAkxf1~uhE&=L6$|wxW>gl{jV3*T;q37uWAOaaq$k5h8^p{ zbMuD&#lSi~i%R3xKP4)WbqxH&(nKm7JaZ>W>%&(+i%A_D{z?y}gkpzMsV`?<#+Ug+ zQFWU?>~pz19*;c|L3Nui7_o=Lo^E^C>+giTV5B>8Y7V75exJwp&Y{#h>b7^(ZBwh; z`cU0=)LPT_wPT~lk6P>hc+{$YZB9p5w<{9y`R#7M*K7B=;ZG#c)n#w*2*H1mus_fd zI%>7S-ZflcwH>wYhOAcF{^Yb-$Plx{fm7~@>|MIWb;KdRicZ^93 ztLK-{;9WbvP=oi=Dn*0m3cIEg5h8Ihmbgoj5FVNTPgLMlTt?1{1^uD7UWHfnK3zog z#KOf@cvTBaO9*1HKtj-O5IrC@O(P<#h>DMpH!33>MrqKO@P_{BLPEu)VRIZvfcwqK z301G?HVntbV4jdrd7NwzW3KQi7Zc2zV+n6KaK6sC-BemysCZTvi3Nk+3^6^SFRjUQ z`utvlb;bfi*~*w_YI&iH$qOw(|L_#z!jeQHLQHWK7u-d~1-CEeeGf4X;)AfzJDnoW zxN|rrilHA6jV{kMuR${NAT~jpTLZNb8o?n?}jkx z>cjZgaWPsIo&O8F?kJh%JpUNg1ETRjt<$ ~NHY!iV2}2_Ht!apS|6_h8YFqp6^? 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

^V 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�`i!E9*1c@^*LW4WjYXMc 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

h<2}DVwp&CHEulC0rM~E-_zNBQb?5* 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 Q|IqXQ0B1QwPXL}008;?Gj{pDw literal 0 HcmV?d00001 From 3be1040275acd49a0ce8cadfd314f0844a80a23d Mon Sep 17 00:00:00 2001 From: r-ung Date: Thu, 5 Dec 2024 16:16:29 +0200 Subject: [PATCH 11/13] Add stream test --- x-pack/filebeat/input/unifiedlogs/input.go | 18 +++-- .../filebeat/input/unifiedlogs/input_test.go | 67 ++++++++++++++++--- 2 files changed, 67 insertions(+), 18 deletions(-) diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index 6e0187fe509..b7724b4caad 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -214,22 +214,26 @@ func (input *input) processLogs(stdout io.Reader, pub inputcursor.Publisher, log scanner := bufio.NewScanner(stdout) var ( - event beat.Event - line string - logRecord logRecord - timestamp time.Time - err error + event beat.Event + line string + logRecordLine logRecord + timestamp time.Time + err error ) for scanner.Scan() { line = scanner.Text() - if err = json.Unmarshal([]byte(line), &logRecord); err != nil { + if err = json.Unmarshal([]byte(line), &logRecordLine); err != nil { log.Errorf("invalid json log: %v", err) input.metrics.errs.Add(1) continue } - timestamp, err = time.Parse(logDateLayout, logRecord.Timestamp) + if logRecordLine == (logRecord{}) { + continue + } + + timestamp, err = time.Parse(logDateLayout, logRecordLine.Timestamp) if err != nil { input.metrics.errs.Add(1) log.Errorf("invalid timestamp: %v", err) diff --git a/x-pack/filebeat/input/unifiedlogs/input_test.go b/x-pack/filebeat/input/unifiedlogs/input_test.go index 51283c4cebf..049ec3856d4 100644 --- a/x-pack/filebeat/input/unifiedlogs/input_test.go +++ b/x-pack/filebeat/input/unifiedlogs/input_test.go @@ -14,6 +14,7 @@ import ( "os" "os/exec" "path" + "regexp" "strings" "sync" "testing" @@ -59,7 +60,7 @@ func TestInput(t *testing.T) { name string cfg config timeUntilClose time.Duration - assertFunc func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) + assertFunc func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) expectedLogStreamCmd string expectedLogShowCmd string expectedRunErrorMsg string @@ -69,7 +70,7 @@ func TestInput(t *testing.T) { cfg: config{}, timeUntilClose: time.Second, expectedLogStreamCmd: "/usr/bin/log stream --style ndjson", - assertFunc: func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) { + assertFunc: func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) { assert.NotEmpty(collect, events) assert.NotEmpty(collect, cursors) assert.Equal(collect, len(events), len(cursors)) @@ -156,12 +157,12 @@ func TestInput(t *testing.T) { }, commonConfig: commonConfig{ Predicate: []string{ - `processImagePath == "\/kernel"`, + `processImagePath == "/kernel"`, }, }, }, timeUntilClose: time.Second, - expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --predicate sender = 'Security'", archivePath), + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --predicate processImagePath == \"/kernel\"", archivePath), assertFunc: eventsAndCursorAssertN(460), }, { @@ -171,11 +172,13 @@ func TestInput(t *testing.T) { ArchiveFile: archivePath, }, commonConfig: commonConfig{ - Process: []string{""}, + Process: []string{ + "0", + }, }, }, timeUntilClose: time.Second, - expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --process 617", archivePath), + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --process 0", archivePath), assertFunc: eventsAndCursorAssertN(462), }, { @@ -194,7 +197,49 @@ func TestInput(t *testing.T) { }, timeUntilClose: time.Second, expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --info --debug --backtrace --signpost --mach-continuous-time", archivePath), - assertFunc: eventsAndCursorAssertN(4081), + assertFunc: eventsAndCursorAssertN(462), + }, + { + name: "Stream and Backfill", + cfg: config{ + Backfill: true, + showConfig: showConfig{ + Start: time.Now().Add(-5 * time.Second).Format("2006-01-02 15:04:05"), + }, + commonConfig: commonConfig{ + Info: true, + Debug: true, + Backtrace: true, + Signpost: true, + MachContinuousTime: true, + }, + }, + timeUntilClose: 2 * time.Second, + expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --info --debug --backtrace --signpost --mach-continuous-time --start %v", time.Now().Format("2006-01-02")), + expectedLogStreamCmd: "/usr/bin/log stream --style ndjson --info --debug --backtrace --signpost --mach-continuous-time", + assertFunc: func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) { + assert.Less(collect, 0, len(events)) + assert.Less(collect, 0, len(cursors)) + + var endTime time.Time + regex := regexp.MustCompile(`--end\s+(\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}[+-]\d{4})`) + if len(cmd) > 0 { + matches := regex.FindStringSubmatch(cmd[0]) + assert.Equal(collect, 2, len(matches)) + endTime, _ = time.Parse("2006-01-02 15:04:05-0700", matches[1]) + } + endTime = endTime.Truncate(time.Second) + + for i := range events { + if cursors[i] == nil { + firstStreamedEventTime := events[i].Timestamp + firstStreamedEventTime = firstStreamedEventTime.Add(time.Second).Truncate(time.Second) + assert.Equal(collect, endTime, firstStreamedEventTime) + break + } + } + + }, }, } @@ -232,9 +277,9 @@ func TestInput(t *testing.T) { assert.EventuallyWithT(t, func(collect *assert.CollectT) { assert.Equal(collect, tc.expectedLogStreamCmd, filterLogStreamLogline(buf.Bytes())) - assert.Equal(collect, tc.expectedLogShowCmd, filterLogShowLogline(buf.Bytes())) + assert.Equal(collect, true, strings.HasPrefix(filterLogShowLogline(buf.Bytes()), tc.expectedLogShowCmd)) if tc.assertFunc != nil { - tc.assertFunc(collect, pub.events, pub.cursors) + tc.assertFunc(collect, pub.events, pub.cursors, filterLogShowLogline(buf.Bytes())) } }, 30*time.Second, time.Second, @@ -272,8 +317,8 @@ func filterLogCmdLine(buf []byte, cmdPrefix string) string { return "" } -func eventsAndCursorAssertN(n int) func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) { - return func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) { +func eventsAndCursorAssertN(n int) func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) { + return func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) { assert.Equal(collect, n, len(events)) assert.Equal(collect, n, len(cursors)) lastEvent := events[len(events)-1] From 53ac742dc9bd11bb8ce1a827518864aa32d2bd6e Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Thu, 5 Dec 2024 16:59:52 +0100 Subject: [PATCH 12/13] Extract test and make input stable --- .../docs/inputs/input-unifiedlogs.asciidoc | 2 - x-pack/filebeat/input/unifiedlogs/input.go | 2 +- .../filebeat/input/unifiedlogs/input_test.go | 157 +++++++++++------- 3 files changed, 100 insertions(+), 61 deletions(-) diff --git a/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc b/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc index 9fa187c5e9d..528272d483a 100644 --- a/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc +++ b/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc @@ -9,8 +9,6 @@ Unified Logs ++++ -beta[] - NOTE: Only available for MacOS. The unified logging system provides a comprehensive and performant API to capture diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index b7724b4caad..c3f2364151a 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -46,7 +46,7 @@ var ( func Plugin(log *logp.Logger, store inputcursor.StateStore) v2.Plugin { return v2.Plugin{ Name: inputName, - Stability: feature.Beta, + Stability: feature.Stable, Deprecated: false, Manager: &inputcursor.InputManager{ Logger: log, diff --git a/x-pack/filebeat/input/unifiedlogs/input_test.go b/x-pack/filebeat/input/unifiedlogs/input_test.go index 049ec3856d4..907c927254d 100644 --- a/x-pack/filebeat/input/unifiedlogs/input_test.go +++ b/x-pack/filebeat/input/unifiedlogs/input_test.go @@ -60,7 +60,7 @@ func TestInput(t *testing.T) { name string cfg config timeUntilClose time.Duration - assertFunc func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) + assertFunc func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) expectedLogStreamCmd string expectedLogShowCmd string expectedRunErrorMsg string @@ -70,7 +70,7 @@ func TestInput(t *testing.T) { cfg: config{}, timeUntilClose: time.Second, expectedLogStreamCmd: "/usr/bin/log stream --style ndjson", - assertFunc: func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) { + assertFunc: func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) { assert.NotEmpty(collect, events) assert.NotEmpty(collect, cursors) assert.Equal(collect, len(events), len(cursors)) @@ -199,48 +199,6 @@ func TestInput(t *testing.T) { expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --archive %s --info --debug --backtrace --signpost --mach-continuous-time", archivePath), assertFunc: eventsAndCursorAssertN(462), }, - { - name: "Stream and Backfill", - cfg: config{ - Backfill: true, - showConfig: showConfig{ - Start: time.Now().Add(-5 * time.Second).Format("2006-01-02 15:04:05"), - }, - commonConfig: commonConfig{ - Info: true, - Debug: true, - Backtrace: true, - Signpost: true, - MachContinuousTime: true, - }, - }, - timeUntilClose: 2 * time.Second, - expectedLogShowCmd: fmt.Sprintf("/usr/bin/log show --style ndjson --info --debug --backtrace --signpost --mach-continuous-time --start %v", time.Now().Format("2006-01-02")), - expectedLogStreamCmd: "/usr/bin/log stream --style ndjson --info --debug --backtrace --signpost --mach-continuous-time", - assertFunc: func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) { - assert.Less(collect, 0, len(events)) - assert.Less(collect, 0, len(cursors)) - - var endTime time.Time - regex := regexp.MustCompile(`--end\s+(\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}[+-]\d{4})`) - if len(cmd) > 0 { - matches := regex.FindStringSubmatch(cmd[0]) - assert.Equal(collect, 2, len(matches)) - endTime, _ = time.Parse("2006-01-02 15:04:05-0700", matches[1]) - } - endTime = endTime.Truncate(time.Second) - - for i := range events { - if cursors[i] == nil { - firstStreamedEventTime := events[i].Timestamp - firstStreamedEventTime = firstStreamedEventTime.Add(time.Second).Truncate(time.Second) - assert.Equal(collect, endTime, firstStreamedEventTime) - break - } - } - - }, - }, } for _, tc := range testCases { @@ -276,10 +234,10 @@ func TestInput(t *testing.T) { assert.EventuallyWithT(t, func(collect *assert.CollectT) { - assert.Equal(collect, tc.expectedLogStreamCmd, filterLogStreamLogline(buf.Bytes())) - assert.Equal(collect, true, strings.HasPrefix(filterLogShowLogline(buf.Bytes()), tc.expectedLogShowCmd)) + assert.Equal(collect, tc.expectedLogStreamCmd, filterStartLogStreamLogline(buf.Bytes())) + assert.Equal(collect, tc.expectedLogShowCmd, filterStartLogShowLogline(buf.Bytes())) if tc.assertFunc != nil { - tc.assertFunc(collect, pub.events, pub.cursors, filterLogShowLogline(buf.Bytes())) + tc.assertFunc(collect, pub.events, pub.cursors) } }, 30*time.Second, time.Second, @@ -288,19 +246,102 @@ func TestInput(t *testing.T) { } } -const cmdStartPrefix = "exec command start: " +func TestBackfillAndStream(t *testing.T) { + archivePath, err := openArchive() + require.NoError(t, err) + t.Cleanup(func() { os.RemoveAll(archivePath) }) + + cfg := config{ + Backfill: true, + showConfig: showConfig{ + Start: time.Now().Add(-5 * time.Second).Format("2006-01-02 15:04:05"), + }, + commonConfig: commonConfig{ + Info: true, + Debug: true, + Backtrace: true, + Signpost: true, + MachContinuousTime: true, + }, + } + + expectedLogShowCmd := fmt.Sprintf("/usr/bin/log show --style ndjson --info --debug --backtrace --signpost --mach-continuous-time --start %v", time.Now().Format("2006-01-02")) + expectedLogStreamCmd := "/usr/bin/log stream --style ndjson --info --debug --backtrace --signpost --mach-continuous-time" + + _, cursorInput := newCursorInput(cfg) + input := cursorInput.(*input) + + ctx, cancel := context.WithCancel(context.Background()) + t.Cleanup(cancel) + + pub := &publisher{} + log, buf := logp.NewInMemory("unifiedlogs_test", logp.JSONEncoderConfig()) + + var wg sync.WaitGroup + wg.Add(1) + go func(t *testing.T) { + defer wg.Done() + err := input.runWithMetrics(ctx, pub, log) + assert.NoError(t, err) + }(t) + + var firstStreamedEventTime *time.Time + assert.EventuallyWithT(t, + func(collect *assert.CollectT) { + showCmdLog := filterStartLogShowLogline(buf.Bytes()) + assert.Equal(collect, expectedLogStreamCmd, filterStartLogStreamLogline(buf.Bytes())) + assert.True(collect, strings.HasPrefix(showCmdLog, expectedLogShowCmd)) + assert.NotEmpty(collect, pub.events) + assert.NotEmpty(collect, pub.cursors) + + var endTime time.Time + regex := regexp.MustCompile(`--end\s+(\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}[+-]\d{4})`) + matches := regex.FindStringSubmatch(showCmdLog) + assert.Equal(collect, 2, len(matches)) + endTime, _ = time.Parse("2006-01-02 15:04:05-0700", matches[1]) + endTime = endTime.Truncate(time.Second) + + if firstStreamedEventTime == nil { + for i := range pub.events { + if pub.cursors[i] == nil { + first := pub.events[i].Timestamp.Add(time.Second).Truncate(time.Second) + firstStreamedEventTime = &first + break + } + } + } + assert.NotNil(collect, firstStreamedEventTime) + assert.EqualValues(collect, endTime, *firstStreamedEventTime) + assert.True(collect, strings.HasPrefix(showCmdLog, filterEndLogShowLogline(buf.Bytes()))) + }, + 30*time.Second, time.Second, + ) + + cancel() + wg.Wait() +} -func filterLogStreamLogline(buf []byte) string { +const ( + cmdStartPrefix = "exec command start: " + cmdEndPrefix = "exec command end: " +) + +func filterStartLogStreamLogline(buf []byte) string { const cmd = "/usr/bin/log stream" - return filterLogCmdLine(buf, cmd) + return filterLogCmdLine(buf, cmd, cmdStartPrefix) +} + +func filterStartLogShowLogline(buf []byte) string { + const cmd = "/usr/bin/log show" + return filterLogCmdLine(buf, cmd, cmdStartPrefix) } -func filterLogShowLogline(buf []byte) string { +func filterEndLogShowLogline(buf []byte) string { const cmd = "/usr/bin/log show" - return filterLogCmdLine(buf, cmd) + return filterLogCmdLine(buf, cmd, cmdEndPrefix) } -func filterLogCmdLine(buf []byte, cmdPrefix string) string { +func filterLogCmdLine(buf []byte, cmd, cmdPrefix string) string { scanner := bufio.NewScanner(bytes.NewBuffer(buf)) for scanner.Scan() { text := scanner.Text() @@ -309,16 +350,16 @@ func filterLogCmdLine(buf []byte, cmdPrefix string) string { continue } - cmd := strings.TrimPrefix(parts[3], cmdStartPrefix) - if strings.HasPrefix(cmd, cmdPrefix) { - return cmd + trimmed := strings.TrimPrefix(parts[3], cmdStartPrefix) + if strings.HasPrefix(trimmed, cmd) { + return trimmed } } return "" } -func eventsAndCursorAssertN(n int) func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) { - return func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time, cmd ...string) { +func eventsAndCursorAssertN(n int) func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) { + return func(collect *assert.CollectT, events []beat.Event, cursors []*time.Time) { assert.Equal(collect, n, len(events)) assert.Equal(collect, n, len(cursors)) lastEvent := events[len(events)-1] From faf030988797f0be20d93b05b5eac4166d87bf25 Mon Sep 17 00:00:00 2001 From: Marc Guasch Date: Wed, 11 Dec 2024 01:58:25 -0800 Subject: [PATCH 13/13] Improve docs --- x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc | 7 ++----- x-pack/filebeat/input/unifiedlogs/input.go | 2 +- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc b/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc index 528272d483a..37589f307fb 100644 --- a/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc +++ b/x-pack/filebeat/docs/inputs/input-unifiedlogs.asciidoc @@ -16,12 +16,9 @@ telemetry across all levels of the system. This system centralizes the storage o log data in memory and on disk, rather than writing that data to a text-based log file. The input interacts with the `log` command-line tool to provide access to the events. -It can process events in some different ways: -- Streaming new, incoming events. This is the default. -- Start processing events from a start date. This happens when the input is restarted, -or when a specific start date is provided. -- Start processing events since the beginning of time, by setting the `backill` option. +The input starts streaming events from the current point in time unless a start date or +the `backfill` options are set. When restarted it will continue where it left off. Alternatively, it can also do one off operations, such as: diff --git a/x-pack/filebeat/input/unifiedlogs/input.go b/x-pack/filebeat/input/unifiedlogs/input.go index c3f2364151a..ca33c03c3bb 100644 --- a/x-pack/filebeat/input/unifiedlogs/input.go +++ b/x-pack/filebeat/input/unifiedlogs/input.go @@ -153,7 +153,7 @@ func (input *input) runWithMetrics(ctx context.Context, pub inputcursor.Publishe // to avoid race conditions updating the cursor, and to be able to // resume from the oldest point in time, we only update cursor - // from the streaming gorouting once backfilling is done. + // from the streaming goroutine once backfilling is done. defer wrappedPub.startUpdatingCursor() } logCmd := newLogShowCmd(ctx, input.config)