diff --git a/NOTICE.txt b/NOTICE.txt index dfbf27f4012..74061092e0b 100644 --- a/NOTICE.txt +++ b/NOTICE.txt @@ -245,7 +245,7 @@ SOFTWARE. -------------------------------------------------------------------- Dependency: github.com/elastic/beats Version: 7.0 -Revision: 4920cd69346f6320f9bdebcff602ba874666f492 +Revision: aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d License type (autodetected): Apache-2.0 ./vendor/github.com/elastic/beats/LICENSE.txt: -------------------------------------------------------------------- @@ -311,7 +311,7 @@ Apache License 2.0 -------------------------------------------------------------------- Dependency: github.com/elastic/go-sysinfo -Revision: 59ef8c0eae46c0929e3b219ac86368d4b5934f91 +Revision: ab4f04edfc3d6b3864f5f06a068ddab9ad79774f License type (autodetected): Apache-2.0 ./vendor/github.com/elastic/go-sysinfo/LICENSE.txt: -------------------------------------------------------------------- diff --git a/_beats/dev-tools/ecs-migration.yml b/_beats/dev-tools/ecs-migration.yml index f12e7db4f37..6d8cea78a21 100644 --- a/_beats/dev-tools/ecs-migration.yml +++ b/_beats/dev-tools/ecs-migration.yml @@ -463,7 +463,26 @@ - from: system.auth.hostname to: host.hostname alias: true - copy_to: false + beat: filebeat + +- from: system.auth.message + to: message + alias: true + beat: filebeat + +- from: system.auth.program + to: process.name + alias: true + beat: filebeat + +- from: system.auth.timestamp + to: '@timestamp' + alias: true + beat: filebeat + +- from: system.auth.user + to: user.name + alias: true beat: filebeat - from: system.auth.pid @@ -476,18 +495,23 @@ alias: true beat: filebeat -- from: system.auth.useradd.uid - to: user.id +- from: system.auth.groupadd.name + to: group.name alias: true beat: filebeat -- from: system.auth.useradd.user - to: user.name +- from: system.auth.useradd.gid + to: group.id alias: true beat: filebeat -- from: system.auth.ssh.event - to: event.action +- from: system.auth.useradd.uid + to: user.id + alias: true + beat: filebeat + +- from: system.auth.useradd.name + to: user.name alias: true beat: filebeat @@ -687,11 +711,6 @@ ## Elasticsearch module -- from: elasticsearch.audit.event_type - to: event.type - alias: true - beat: filebeat - - from: elasticsearch.audit.origin_address to: source.ip alias: true @@ -1156,6 +1175,11 @@ ## NGINX module +- from: nginx.access.remote_ip + to: source.address + alias: true + beat: filebeat + - from: nginx.access.user_name to: user.name alias: true diff --git a/_beats/libbeat/docs/version.asciidoc b/_beats/libbeat/docs/version.asciidoc index 222853bd4c7..478ab657710 100644 --- a/_beats/libbeat/docs/version.asciidoc +++ b/_beats/libbeat/docs/version.asciidoc @@ -1,4 +1,4 @@ -:stack-version: 7.0.0-beta1 +:stack-version: 7.0.0-rc2 :doc-branch: 7.0 :go-version: 1.11.5 :release-state: prerelease diff --git a/_beats/libbeat/scripts/Makefile b/_beats/libbeat/scripts/Makefile index a3c905d1b18..fbdd3e8afb0 100755 --- a/_beats/libbeat/scripts/Makefile +++ b/_beats/libbeat/scripts/Makefile @@ -250,7 +250,7 @@ load-tests: ## @testing Runs load tests # Sets up the virtual python environment .PHONY: python-env python-env: ${ES_BEATS}/libbeat/tests/system/requirements.txt - @test -d ${PYTHON_ENV} || virtualenv ${VIRTUALENV_PARAMS} ${PYTHON_ENV} + @test -d ${PYTHON_ENV} || virtualenv $(if ${PYTHON_EXE},-p ${PYTHON_EXE}) ${VIRTUALENV_PARAMS} ${PYTHON_ENV} @. ${PYTHON_ENV}/bin/activate && pip install ${PIP_INSTALL_PARAMS} -q --upgrade pip ; \ if [ -a ./tests/system/requirements.txt ] && [ ! ${ES_BEATS}/libbeat/tests/system/requirements.txt -ef ./tests/system/requirements.txt ] ; then \ . ${PYTHON_ENV}/bin/activate && pip install ${PIP_INSTALL_PARAMS} -qUr ${ES_BEATS}/libbeat/tests/system/requirements.txt -Ur ./tests/system/requirements.txt ; \ diff --git a/_beats/libbeat/tests/system/beat/beat.py b/_beats/libbeat/tests/system/beat/beat.py index 4b33285c57e..fa88fb1aba3 100644 --- a/_beats/libbeat/tests/system/beat/beat.py +++ b/_beats/libbeat/tests/system/beat/beat.py @@ -220,6 +220,9 @@ def start_beat(self, def render_config_template(self, template_name=None, output=None, **kargs): + + print("render config") + # Init defaults if template_name is None: template_name = self.beat_name diff --git a/_beats/testing/environments/docker/kafka/Dockerfile b/_beats/testing/environments/docker/kafka/Dockerfile index 753102d5055..957b9f6cc55 100644 --- a/_beats/testing/environments/docker/kafka/Dockerfile +++ b/_beats/testing/environments/docker/kafka/Dockerfile @@ -4,7 +4,7 @@ ENV KAFKA_HOME /kafka # The advertised host is kafka. This means it will not work if container is started locally and connected from localhost to it ENV KAFKA_ADVERTISED_HOST kafka ENV KAFKA_LOGS_DIR="/kafka-logs" -ENV KAFKA_VERSION 2.1.0 +ENV KAFKA_VERSION 2.1.1 ENV _JAVA_OPTIONS "-Djava.net.preferIPv4Stack=true" ENV TERM=linux diff --git a/_beats/vendor/vendor.json b/_beats/vendor/vendor.json index d4bcd302afc..6008af2705c 100644 --- a/_beats/vendor/vendor.json +++ b/_beats/vendor/vendor.json @@ -951,44 +951,44 @@ { "checksumSHA1": "QhFIpuHPaV6hKejKcc2wm6y4MSQ=", "path": "github.com/elastic/go-sysinfo", - "revision": "59ef8c0eae46c0929e3b219ac86368d4b5934f91", - "revisionTime": "2019-01-07T12:18:35Z" + "revision": "ab4f04edfc3d6b3864f5f06a068ddab9ad79774f", + "revisionTime": "2019-03-27T18:53:17Z" }, { "checksumSHA1": "GiZCjX17K265TtamGZZw4R2Jwbk=", "path": "github.com/elastic/go-sysinfo/internal/registry", - "revision": "59ef8c0eae46c0929e3b219ac86368d4b5934f91", - "revisionTime": "2019-01-07T12:18:35Z" + "revision": "ab4f04edfc3d6b3864f5f06a068ddab9ad79774f", + "revisionTime": "2019-03-27T18:53:17Z" }, { "checksumSHA1": "ovafihHzpBx9Y7+lZh9X5KwNCvE=", "path": "github.com/elastic/go-sysinfo/providers/darwin", - "revision": "59ef8c0eae46c0929e3b219ac86368d4b5934f91", - "revisionTime": "2019-01-07T12:18:35Z" + "revision": "ab4f04edfc3d6b3864f5f06a068ddab9ad79774f", + "revisionTime": "2019-03-27T18:53:17Z" }, { - "checksumSHA1": "AK76ZxnuvK02Dfpmj7b2TD/aiSI=", + "checksumSHA1": "OyI+VwDiT4UZjncsDr1GYg1xcdw=", "path": "github.com/elastic/go-sysinfo/providers/linux", - "revision": "59ef8c0eae46c0929e3b219ac86368d4b5934f91", - "revisionTime": "2019-01-07T12:18:35Z" + "revision": "ab4f04edfc3d6b3864f5f06a068ddab9ad79774f", + "revisionTime": "2019-03-27T18:53:17Z" }, { "checksumSHA1": "RWLvcP1w9ynKbuCqiW6prwd+EDU=", "path": "github.com/elastic/go-sysinfo/providers/shared", - "revision": "59ef8c0eae46c0929e3b219ac86368d4b5934f91", - "revisionTime": "2019-01-07T12:18:35Z" + "revision": "ab4f04edfc3d6b3864f5f06a068ddab9ad79774f", + "revisionTime": "2019-03-27T18:53:17Z" }, { "checksumSHA1": "aF05MEkMjbRekzHlwFxmd5WBpeY=", "path": "github.com/elastic/go-sysinfo/providers/windows", - "revision": "59ef8c0eae46c0929e3b219ac86368d4b5934f91", - "revisionTime": "2019-01-07T12:18:35Z" + "revision": "ab4f04edfc3d6b3864f5f06a068ddab9ad79774f", + "revisionTime": "2019-03-27T18:53:17Z" }, { "checksumSHA1": "MLQioPEjULYbNqqCjfB1/cux08E=", "path": "github.com/elastic/go-sysinfo/types", - "revision": "59ef8c0eae46c0929e3b219ac86368d4b5934f91", - "revisionTime": "2019-01-07T12:18:35Z" + "revision": "ab4f04edfc3d6b3864f5f06a068ddab9ad79774f", + "revisionTime": "2019-03-27T18:53:17Z" }, { "checksumSHA1": "bNf3GDGhZh86bfCIMM5c5AYfo3g=", diff --git a/changelogs/7.0.asciidoc b/changelogs/7.0.asciidoc index ec48657098f..8b0cdc1047b 100644 --- a/changelogs/7.0.asciidoc +++ b/changelogs/7.0.asciidoc @@ -13,6 +13,17 @@ https://github.com/elastic/apm-server/compare/6.7...7.0[View commits] //// [[release-notes-7.0.0]] === APM Server version 7.0.0 +https://github.com/elastic/apm-server/compare/v7.0.0-rc2...v7.0.0[View commits] + +[float] +==== Bug fixes + +- Fix index template always being overwritten {pull}2077[2077]. + +[float] +==== Added + +- Perform Basic license check on Elasticsearch connect {pull}2077[2077]. //// [[release-notes-7.0.0-rc2]] diff --git a/vendor/github.com/elastic/beats/NOTICE.txt b/vendor/github.com/elastic/beats/NOTICE.txt index dc031a017bb..2fe3949b3ca 100644 --- a/vendor/github.com/elastic/beats/NOTICE.txt +++ b/vendor/github.com/elastic/beats/NOTICE.txt @@ -643,7 +643,7 @@ Apache License 2.0 -------------------------------------------------------------------- Dependency: github.com/elastic/go-sysinfo -Revision: 59ef8c0eae46c0929e3b219ac86368d4b5934f91 +Revision: ab4f04edfc3d6b3864f5f06a068ddab9ad79774f License type (autodetected): Apache-2.0 ./vendor/github.com/elastic/go-sysinfo/LICENSE.txt: -------------------------------------------------------------------- diff --git a/vendor/github.com/elastic/beats/dev-tools/mage/pytest.go b/vendor/github.com/elastic/beats/dev-tools/mage/pytest.go index 9aaf8a4b4e8..cdcce4c6166 100644 --- a/vendor/github.com/elastic/beats/dev-tools/mage/pytest.go +++ b/vendor/github.com/elastic/beats/dev-tools/mage/pytest.go @@ -167,10 +167,17 @@ func PythonVirtualenv() (string, error) { return pythonVirtualenvDir, nil } + // If set use PYTHON_EXE env var as the python interpreter. + var args []string + if pythonExe := os.Getenv("PYTHON_EXE"); pythonExe != "" { + args = append(args, "-p", pythonExe) + } + args = append(args, ve) + // Execute virtualenv. if _, err := os.Stat(ve); err != nil { // Run virtualenv if the dir does not exist. - if err := sh.Run("virtualenv", ve); err != nil { + if err := sh.Run("virtualenv", args...); err != nil { return "", err } } @@ -181,7 +188,7 @@ func PythonVirtualenv() (string, error) { } pip := virtualenvPath(ve, "pip") - args := []string{"install"} + args = []string{"install"} if !mg.Verbose() { args = append(args, "--quiet") } diff --git a/vendor/github.com/elastic/beats/libbeat/cmd/instance/beat.go b/vendor/github.com/elastic/beats/libbeat/cmd/instance/beat.go index 40e647ea5dc..9bb322df89b 100644 --- a/vendor/github.com/elastic/beats/libbeat/cmd/instance/beat.go +++ b/vendor/github.com/elastic/beats/libbeat/cmd/instance/beat.go @@ -24,6 +24,7 @@ import ( "errors" "flag" "fmt" + "io" "math" "math/big" "math/rand" @@ -104,7 +105,7 @@ type beatConfig struct { Pipeline pipeline.Config `config:",inline"` Monitoring *common.Config `config:"xpack.monitoring"` - // central managmenet settings + // central management settings Management *common.Config `config:"management"` // elastic stack 'setup' configurations @@ -569,7 +570,8 @@ func (b *Beat) configure(settings Settings) error { // log paths values to help with troubleshooting logp.Info(paths.Paths.String()) - err = b.loadMeta() + metaPath := paths.Resolve(paths.Data, "meta.json") + err = b.loadMeta(metaPath) if err != nil { return err } @@ -613,12 +615,11 @@ func (b *Beat) configure(settings Settings) error { return err } -func (b *Beat) loadMeta() error { +func (b *Beat) loadMeta(metaPath string) error { type meta struct { UUID uuid.UUID `json:"uuid"` } - metaPath := paths.Resolve(paths.Data, "meta.json") logp.Debug("beat", "Beat metadata path: %v", metaPath) f, err := openRegular(metaPath) @@ -628,7 +629,7 @@ func (b *Beat) loadMeta() error { if err == nil { m := meta{} - if err := json.NewDecoder(f).Decode(&m); err != nil { + if err := json.NewDecoder(f).Decode(&m); err != nil && err != io.EOF { f.Close() return fmt.Errorf("Beat meta file reading error: %v", err) } @@ -650,12 +651,21 @@ func (b *Beat) loadMeta() error { return fmt.Errorf("Failed to create Beat meta file: %s", err) } - err = json.NewEncoder(f).Encode(meta{UUID: b.Info.ID}) - f.Close() + encodeErr := json.NewEncoder(f).Encode(meta{UUID: b.Info.ID}) + err = f.Sync() + if err != nil { + return fmt.Errorf("Beat meta file failed to write: %s", err) + } + + err = f.Close() if err != nil { return fmt.Errorf("Beat meta file failed to write: %s", err) } + if encodeErr != nil { + return fmt.Errorf("Beat meta file failed to write: %s", encodeErr) + } + // move temporary file into final location err = file.SafeFileRotate(metaPath, tempFile) return err @@ -699,7 +709,7 @@ func (b *Beat) loadDashboards(ctx context.Context, force bool) error { if b.Config.Dashboards.Enabled() { // Initialize kibana config. If username and password is set in elasticsearch output config but not in kibana, - // initKibanaConfig will attach the ussername and password into kibana config as a part of the initialization. + // initKibanaConfig will attach the username and password into kibana config as a part of the initialization. kibanaConfig, err := initKibanaConfig(b.Config) if err != nil { return fmt.Errorf("error initKibanaConfig: %v", err) @@ -753,7 +763,7 @@ func (b *Beat) registerESIndexManagement() error { func (b *Beat) indexSetupCallback() func(esClient *elasticsearch.Client) error { return func(esClient *elasticsearch.Client) error { m := b.index.Manager(esClient, idxmgmt.BeatsAssets(b.Fields)) - return m.Setup(true, true) + return m.Setup(false, false) } } diff --git a/vendor/github.com/elastic/beats/libbeat/cmd/keystore.go b/vendor/github.com/elastic/beats/libbeat/cmd/keystore.go index b482c1260ab..706efd5b6ca 100644 --- a/vendor/github.com/elastic/beats/libbeat/cmd/keystore.go +++ b/vendor/github.com/elastic/beats/libbeat/cmd/keystore.go @@ -104,7 +104,7 @@ func genAddKeystoreCmd(settings instance.Settings) *cobra.Command { func genRemoveKeystoreCmd(settings instance.Settings) *cobra.Command { return &cobra.Command{ Use: "remove", - Short: "remove secret", + Short: "Remove secret", Run: cli.RunWith(func(cmd *cobra.Command, args []string) error { store, err := getKeystore(settings) if err != nil { @@ -136,7 +136,7 @@ func createKeystore(settings instance.Settings, force bool) error { } if store.IsPersisted() == true && force == false { - response := terminal.PromptYesNo("A keystore already exists, Overwrite?", true) + response := terminal.PromptYesNo("A keystore already exists, Overwrite?", false) if response == true { err := store.Create(true) if err != nil { diff --git a/vendor/github.com/elastic/beats/libbeat/common/config.go b/vendor/github.com/elastic/beats/libbeat/common/config.go index 7cfca092245..dd19dedb6a4 100644 --- a/vendor/github.com/elastic/beats/libbeat/common/config.go +++ b/vendor/github.com/elastic/beats/libbeat/common/config.go @@ -432,7 +432,7 @@ func ownerHasExclusiveWritePerms(name string) error { perm := info.Mode().Perm() if fileUID != 0 && euid != fileUID { - return fmt.Errorf(`config file ("%v") must be owned by the beat user `+ + return fmt.Errorf(`config file ("%v") must be owned by the user identifier `+ `(uid=%v) or root`, name, euid) } diff --git a/vendor/github.com/elastic/beats/libbeat/idxmgmt/idxmgmt.go b/vendor/github.com/elastic/beats/libbeat/idxmgmt/idxmgmt.go index 6ee86354c3f..adda46d62c3 100644 --- a/vendor/github.com/elastic/beats/libbeat/idxmgmt/idxmgmt.go +++ b/vendor/github.com/elastic/beats/libbeat/idxmgmt/idxmgmt.go @@ -75,7 +75,7 @@ type ESClient interface { // Manager is used to initialize indices, ILM policies, and aliases within the // Elastic Stack. type Manager interface { - Setup(template, policy bool) error + Setup(forceTemplate, forcePolicy bool) error } // DefaultSupport initializes the default index management support used by most Beats. diff --git a/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/ilm.go b/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/ilm.go index 6ca833b978f..98cc77b70b2 100644 --- a/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/ilm.go +++ b/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/ilm.go @@ -45,8 +45,14 @@ type Supporter interface { // Manager uses an APIHandler to install a policy. type Manager interface { Enabled() (bool, error) + EnsureAlias() error - EnsurePolicy(overwrite bool) error + + // EnsurePolicy installs a policy if it does not exist. The policy is always + // written if overwrite is set. + // The created flag is set to true only if a new policy is created. `created` + // is false if an existing policy gets overwritten. + EnsurePolicy(overwrite bool) (created bool, err error) } // APIHandler defines the interface between a remote service and the Manager. diff --git a/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/noop.go b/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/noop.go index 129ca4c9eab..c6479596aff 100644 --- a/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/noop.go +++ b/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/noop.go @@ -36,6 +36,6 @@ func (*noopSupport) Alias() Alias { return Alias{} } func (*noopSupport) Policy() Policy { return Policy{} } func (*noopSupport) Manager(_ APIHandler) Manager { return (*noopManager)(nil) } -func (*noopManager) Enabled() (bool, error) { return false, nil } -func (*noopManager) EnsureAlias() error { return errOf(ErrOpNotAvailable) } -func (*noopManager) EnsurePolicy(_ bool) error { return errOf(ErrOpNotAvailable) } +func (*noopManager) Enabled() (bool, error) { return false, nil } +func (*noopManager) EnsureAlias() error { return errOf(ErrOpNotAvailable) } +func (*noopManager) EnsurePolicy(_ bool) (bool, error) { return false, errOf(ErrOpNotAvailable) } diff --git a/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/std.go b/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/std.go index 8c55e471136..5709d03ca91 100644 --- a/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/std.go +++ b/vendor/github.com/elastic/beats/libbeat/idxmgmt/ilm/std.go @@ -114,7 +114,7 @@ func (m *singlePolicyManager) EnsureAlias() error { return m.client.CreateAlias(m.alias) } -func (m *singlePolicyManager) EnsurePolicy(overwrite bool) error { +func (m *singlePolicyManager) EnsurePolicy(overwrite bool) (bool, error) { log := m.log overwrite = overwrite || m.overwrite @@ -122,18 +122,18 @@ func (m *singlePolicyManager) EnsurePolicy(overwrite bool) error { if m.checkExists && !overwrite { b, err := m.client.HasILMPolicy(m.policy.Name) if err != nil { - return err + return false, err } exists = b } if !exists || overwrite { - return m.client.CreateILMPolicy(m.policy) + return !exists, m.client.CreateILMPolicy(m.policy) } log.Infof("do not generate ilm policy: exists=%v, overwrite=%v", exists, overwrite) - return nil + return false, nil } func (c *infoCache) Valid() bool { diff --git a/vendor/github.com/elastic/beats/libbeat/idxmgmt/std.go b/vendor/github.com/elastic/beats/libbeat/idxmgmt/std.go index a2e8149e7bb..e97e0799fd2 100644 --- a/vendor/github.com/elastic/beats/libbeat/idxmgmt/std.go +++ b/vendor/github.com/elastic/beats/libbeat/idxmgmt/std.go @@ -200,8 +200,8 @@ func (s *indexSupport) BuildSelector(cfg *common.Config) (outputs.IndexSelector, }, nil } -func (m *indexManager) Setup(template, policy bool) error { - return m.load(template, policy) +func (m *indexManager) Setup(forceTemplate, forcePolicy bool) error { + return m.load(forceTemplate, forcePolicy) } func (m *indexManager) Load() error { @@ -231,10 +231,16 @@ func (m *indexManager) load(forceTemplate, forcePolicy bool) error { // install ilm policy if withILM { - if err := m.ilm.EnsurePolicy(forcePolicy); err != nil { + policyCreated, err := m.ilm.EnsurePolicy(forcePolicy) + if err != nil { return err } log.Info("ILM policy successfully loaded.") + + // The template should be updated if a new policy is created. + if policyCreated { + forceTemplate = true + } } // create and install template diff --git a/vendor/github.com/elastic/beats/libbeat/keystore/file_keystore.go b/vendor/github.com/elastic/beats/libbeat/keystore/file_keystore.go index 3f530a58120..fb1aa15c590 100644 --- a/vendor/github.com/elastic/beats/libbeat/keystore/file_keystore.go +++ b/vendor/github.com/elastic/beats/libbeat/keystore/file_keystore.go @@ -389,7 +389,7 @@ func (k *FileKeystore) checkPermissions(f string) error { perm := info.Mode().Perm() if fileUID != 0 && euid != fileUID { - return fmt.Errorf(`config file ("%v") must be owned by the beat user `+ + return fmt.Errorf(`config file ("%v") must be owned by the user identifier `+ `(uid=%v) or root`, f, euid) } diff --git a/vendor/github.com/elastic/beats/libbeat/outputs/elasticsearch/client.go b/vendor/github.com/elastic/beats/libbeat/outputs/elasticsearch/client.go index 5230f3c57a3..42f9e69939b 100644 --- a/vendor/github.com/elastic/beats/libbeat/outputs/elasticsearch/client.go +++ b/vendor/github.com/elastic/beats/libbeat/outputs/elasticsearch/client.go @@ -225,6 +225,16 @@ func NewClient( } client.Connection.onConnectCallback = func() error { + globalCallbackRegistry.mutex.Lock() + defer globalCallbackRegistry.mutex.Unlock() + + for _, callback := range globalCallbackRegistry.callbacks { + err := callback(client) + if err != nil { + return err + } + } + if onConnect != nil { onConnect.mutex.Lock() defer onConnect.mutex.Unlock() @@ -721,7 +731,7 @@ func (conn *Connection) Ping() (string, error) { } debugf("Ping status code: %v", status) - logp.Info("Connected to Elasticsearch version %s", response.Version.Number) + logp.Info("Attempting to connect to Elasticsearch version %s", response.Version.Number) return response.Version.Number, nil } diff --git a/vendor/github.com/elastic/beats/libbeat/outputs/elasticsearch/elasticsearch.go b/vendor/github.com/elastic/beats/libbeat/outputs/elasticsearch/elasticsearch.go index f604190c31c..323f4c88a35 100644 --- a/vendor/github.com/elastic/beats/libbeat/outputs/elasticsearch/elasticsearch.go +++ b/vendor/github.com/elastic/beats/libbeat/outputs/elasticsearch/elasticsearch.go @@ -61,6 +61,31 @@ type callbacksRegistry struct { // XXX: it would be fantastic to do this without a package global var connectCallbackRegistry = newCallbacksRegistry() +// NOTE(ph): We need to refactor this, right now this is the only way to ensure that every calls +// to an ES cluster executes a callback. +var globalCallbackRegistry = newCallbacksRegistry() + +// RegisterGlobalCallback register a global callbacks. +func RegisterGlobalCallback(callback connectCallback) (uuid.UUID, error) { + globalCallbackRegistry.mutex.Lock() + defer globalCallbackRegistry.mutex.Unlock() + + // find the next unique key + var key uuid.UUID + var err error + exists := true + for exists { + key, err = uuid.NewV4() + if err != nil { + return uuid.Nil, err + } + _, exists = globalCallbackRegistry.callbacks[key] + } + + globalCallbackRegistry.callbacks[key] = callback + return key, nil +} + func newCallbacksRegistry() callbacksRegistry { return callbacksRegistry{ callbacks: make(map[uuid.UUID]connectCallback), @@ -99,6 +124,15 @@ func DeregisterConnectCallback(key uuid.UUID) { delete(connectCallbackRegistry.callbacks, key) } +// DeregisterGlobalCallback deregisters a callback for the elasticsearch output +// specified by its key. If a callback does not exist, nothing happens. +func DeregisterGlobalCallback(key uuid.UUID) { + globalCallbackRegistry.mutex.Lock() + defer globalCallbackRegistry.mutex.Unlock() + + delete(globalCallbackRegistry.callbacks, key) +} + func makeES( im outputs.IndexManager, beat beat.Info, diff --git a/vendor/github.com/elastic/beats/libbeat/processors/add_docker_metadata/add_docker_metadata.go b/vendor/github.com/elastic/beats/libbeat/processors/add_docker_metadata/add_docker_metadata.go index ecf7a44278a..689a29b6787 100644 --- a/vendor/github.com/elastic/beats/libbeat/processors/add_docker_metadata/add_docker_metadata.go +++ b/vendor/github.com/elastic/beats/libbeat/processors/add_docker_metadata/add_docker_metadata.go @@ -86,7 +86,7 @@ func buildDockerMetadataProcessor(cfg *common.Config, watcherConstructor docker. var sourceProcessor processors.Processor if config.MatchSource { var procConf, _ = common.NewConfigFrom(map[string]interface{}{ - "field": "source", + "field": "log.file.path", "separator": string(os.PathSeparator), "index": config.SourceIndex, "target": dockerContainerIDKey, @@ -122,10 +122,10 @@ func lazyCgroupCacheInit(d *addDockerMetadata) { func (d *addDockerMetadata) Run(event *beat.Event) (*beat.Event, error) { var cid string var err error - - // Extract CID from the filepath contained in the "source" field. + // Extract CID from the filepath contained in the "log.file.path" field. if d.sourceProcessor != nil { - if event.Fields["source"] != nil { + lfp, _ := event.Fields.GetValue("log.file.path") + if lfp != nil { event, err = d.sourceProcessor.Run(event) if err != nil { d.log.Debugf("Error while extracting container ID from source path: %v", err) diff --git a/vendor/github.com/elastic/beats/libbeat/template/processor.go b/vendor/github.com/elastic/beats/libbeat/template/processor.go index 4e25bcec03f..8df4bc2ab50 100644 --- a/vendor/github.com/elastic/beats/libbeat/template/processor.go +++ b/vendor/github.com/elastic/beats/libbeat/template/processor.go @@ -101,7 +101,7 @@ func (p *Processor) Process(fields common.Fields, path string, output common.Map } switch field.Type { - case "", "keyword", "text", "ip": + case "", "keyword", "text": addToDefaultFields(&field) } diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/cmd/inject.go b/vendor/github.com/elastic/beats/x-pack/libbeat/cmd/inject.go index 715f3d2df5c..b55427ae403 100644 --- a/vendor/github.com/elastic/beats/x-pack/libbeat/cmd/inject.go +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/cmd/inject.go @@ -6,12 +6,17 @@ package cmd import ( "github.com/elastic/beats/libbeat/cmd" + "github.com/elastic/beats/libbeat/logp" // register central management + "github.com/elastic/beats/x-pack/libbeat/licenser" _ "github.com/elastic/beats/x-pack/libbeat/management" ) +const licenseDebugK = "license" + // AddXPack extends the given root folder with XPack features func AddXPack(root *cmd.BeatsRootCmd, name string) { + licenser.Enforce(logp.NewLogger(licenseDebugK), licenser.BasicAndAboveOrTrial) root.AddCommand(genEnrollCmd(name, "")) } diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/callback_watcher.go b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/callback_watcher.go new file mode 100644 index 00000000000..054ad6b22aa --- /dev/null +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/callback_watcher.go @@ -0,0 +1,29 @@ +// 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. + +package licenser + +// CallbackWatcher defines an addhoc listener for events generated by the manager. +type CallbackWatcher struct { + New func(License) + Stopped func() +} + +// OnNewLicense is called when a new license is set in the manager. +func (cb *CallbackWatcher) OnNewLicense(license License) { + if cb.New == nil { + return + } + cb.New(license) +} + +// OnManagerStopped is called when the manager is stopped, watcher are expected to terminates any +// features that depends on a specific license. +func (cb *CallbackWatcher) OnManagerStopped() { + if cb.Stopped == nil { + return + } + + cb.Stopped() +} diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/check.go b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/check.go new file mode 100644 index 00000000000..b41383f27e1 --- /dev/null +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/check.go @@ -0,0 +1,57 @@ +// 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. + +package licenser + +import ( + "github.com/elastic/beats/libbeat/logp" +) + +// CheckFunc signature to implement a function that validate a license. +type CheckFunc func(*logp.Logger, License) bool + +// CheckTrial returns true if the license is in trial and the license is not expired. +func CheckTrial(log *logp.Logger, license License) bool { + log.Debug("Checking trial license") + if license.IsTrial() { + if license.IsTrialExpired() { + log.Error("Trial license is expired") + return false + } + log.Info("Trial license active") + return true + } + return false +} + +// CheckLicenseCover check that the current license cover the requested license. +func CheckLicenseCover(licenseType LicenseType) func(*logp.Logger, License) bool { + return func(log *logp.Logger, license License) bool { + log.Debug("Checking that license covers %s", licenseType) + if license.Cover(licenseType) && license.IsActive() { + return true + } + log.Infof("License is active for %s", licenseType) + return false + } +} + +// CheckBasic returns true if the license is +var CheckBasic = CheckLicenseCover(Basic) + +// Validate uses a set of checks to validate if a license is valid or not and will return true on on the +// first check that validate the license. +func Validate(log *logp.Logger, license License, checks ...CheckFunc) bool { + for _, check := range checks { + if check(log, license) { + return true + } + } + return false +} + +// BasicAndAboveOrTrial return true if the license is basic or if the license is trial and active. +func BasicAndAboveOrTrial(log *logp.Logger, license License) bool { + return CheckBasic(log, license) || CheckTrial(log, license) +} diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/elastic_fetcher.go b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/elastic_fetcher.go new file mode 100644 index 00000000000..520da391393 --- /dev/null +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/elastic_fetcher.go @@ -0,0 +1,226 @@ +// 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. + +package licenser + +import ( + "encoding/json" + "fmt" + "math/rand" + "net/http" + "strconv" + "time" + + "github.com/pkg/errors" + + "github.com/elastic/beats/libbeat/common" + "github.com/elastic/beats/libbeat/logp" + "github.com/elastic/beats/libbeat/outputs/elasticsearch" +) + +const xPackURL = "/_xpack" + +// params defaults query parameters to send to the '_xpack' endpoint by default we only need +// machine parseable data. +var params = map[string]string{ + "human": "false", +} + +var stateLookup = map[string]State{ + "inactive": Inactive, + "active": Active, +} + +var licenseLookup = map[string]LicenseType{ + "oss": OSS, + "trial": Trial, + "standard": Standard, + "basic": Basic, + "gold": Gold, + "platinum": Platinum, +} + +// UnmarshalJSON takes a bytes array and convert it to the appropriate license type. +func (t *LicenseType) UnmarshalJSON(b []byte) error { + if len(b) <= 2 { + return fmt.Errorf("invalid string for license type, received: '%s'", string(b)) + } + s := string(b[1 : len(b)-1]) + if license, ok := licenseLookup[s]; ok { + *t = license + return nil + } + + return fmt.Errorf("unknown license type, received: '%s'", s) +} + +// UnmarshalJSON takes a bytes array and convert it to the appropriate state. +func (st *State) UnmarshalJSON(b []byte) error { + // we are only interested in the content between the quotes. + if len(b) <= 2 { + return fmt.Errorf("invalid string for state, received: '%s'", string(b)) + } + + s := string(b[1 : len(b)-1]) + if state, ok := stateLookup[s]; ok { + *st = state + return nil + } + return fmt.Errorf("unknown state, received: '%s'", s) +} + +// UnmarshalJSON takes a bytes array and transform the int64 to a golang time. +func (et *expiryTime) UnmarshalJSON(b []byte) error { + ts, err := strconv.ParseInt(string(b), 0, 64) + if err != nil { + return errors.Wrap(err, "could not parse value for expiry time") + } + + *et = expiryTime(time.Unix(0, int64(time.Millisecond)*int64(ts)).UTC()) + return nil +} + +type esclient interface { + Request( + method, + path string, + pipeline string, + params map[string]string, + body interface{}, + ) (int, []byte, error) +} + +// ElasticFetcher wraps an elasticsearch clients to retrieve licensing information +// on a specific cluster. +type ElasticFetcher struct { + client esclient + log *logp.Logger +} + +// NewElasticFetcher creates a new Elastic Fetcher +func NewElasticFetcher(client esclient) *ElasticFetcher { + return &ElasticFetcher{client: client, log: logp.NewLogger("elasticfetcher")} +} + +// Fetch retrieves the license information from an Elasticsearch Client, it will call the `_xpack` +// end point and will return a parsed license. If the `_xpack` endpoint is unreacheable we will +// return the OSS License otherwise we return an error. +func (f *ElasticFetcher) Fetch() (*License, error) { + status, body, err := f.client.Request("GET", xPackURL, "", params, nil) + // When we are running an OSS release of elasticsearch the _xpack endpoint will return a 405, + // "Method Not Allowed", so we return the default OSS license. + if status == http.StatusBadRequest { + f.log.Debug("Received 'Bad request' (400) response from server, fallback to OSS license") + return OSSLicense, nil + } + + if status == http.StatusMethodNotAllowed { + f.log.Debug("Received 'Method Not allowed' (405) response from server, fallback to OSS license") + return OSSLicense, nil + } + + if status == http.StatusUnauthorized { + return nil, errors.New("unauthorized access, could not connect to the xpack endpoint, verify your credentials") + } + + if status != http.StatusOK { + return nil, fmt.Errorf("error from server, response code: %d", status) + } + + if err != nil { + return nil, errors.Wrap(err, "could not retrieve the license information from the cluster") + } + + license, err := f.parseJSON(body) + if err != nil { + f.log.Debugw("Invalid response from server", "body", string(body)) + return nil, errors.Wrap(err, "could not extract license information from the server response") + } + + return license, nil +} + +// Xpack Response, temporary struct to merge the features into the license struct. +type xpackResponse struct { + License License `json:"license"` + Features features `json:"features"` +} + +func (f *ElasticFetcher) parseJSON(b []byte) (*License, error) { + info := &xpackResponse{} + + if err := json.Unmarshal(b, info); err != nil { + return nil, err + } + + license := info.License + license.Features = info.Features + + return &license, nil +} + +// esClientMux is taking care of round robin request over an array of elasticsearch client, note that +// calling request is not threadsafe. +type esClientMux struct { + clients []elasticsearch.Client + idx int +} + +// Request takes a slice of elasticsearch clients and connect to one randomly and close the connection +// at the end of the function call, if an error occur we return the error and will pick up the next client on the +// next call. Not that we just round robin between hosts, any backoff strategy should be handled by +// the consumer of this type. +func (mux *esClientMux) Request( + method, path string, + pipeline string, + params map[string]string, + body interface{}, +) (int, []byte, error) { + c := mux.clients[mux.idx] + + if err := c.Connect(); err != nil { + return 0, nil, err + } + defer c.Close() + + status, response, err := c.Request(method, path, pipeline, params, body) + if err != nil { + // use next host for next retry + mux.idx = (mux.idx + 1) % len(mux.clients) + } + return status, response, err +} + +// newESClientMux takes a list of clients and randomize where we start and the list of host we are +// querying. +func newESClientMux(clients []elasticsearch.Client) *esClientMux { + // randomize where we start + idx := rand.Intn(len(clients)) + + // randomize the list of round robin hosts. + tmp := make([]elasticsearch.Client, len(clients)) + copy(tmp, clients) + rand.Shuffle(len(tmp), func(i, j int) { + tmp[i], tmp[j] = tmp[j], tmp[i] + }) + + return &esClientMux{idx: idx, clients: tmp} +} + +// Create takes a raw configuration and will create a a license manager based on the elasticsearch +// output configuration, if no output is found we return an error. +func Create(cfg *common.ConfigNamespace, refreshDelay, graceDelay time.Duration) (*Manager, error) { + if !cfg.IsSet() || cfg.Name() != "elasticsearch" { + return nil, ErrNoElasticsearchConfig + } + + clients, err := elasticsearch.NewElasticsearchClients(cfg.Config()) + if err != nil { + return nil, err + } + clientsMux := newESClientMux(clients) + + manager := New(clientsMux, refreshDelay, graceDelay) + return manager, nil +} diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/es_callback.go b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/es_callback.go new file mode 100644 index 00000000000..f854bfd9d85 --- /dev/null +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/es_callback.go @@ -0,0 +1,44 @@ +// 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. + +package licenser + +import ( + "fmt" + + "github.com/pkg/errors" + + "github.com/elastic/beats/libbeat/logp" + "github.com/elastic/beats/libbeat/outputs/elasticsearch" +) + +// Enforce setups the corresponding callbacks in libbeat to verify the license on the +// remote elasticsearch cluster. +func Enforce(log *logp.Logger, checks ...CheckFunc) { + cb := func(client *elasticsearch.Client) error { + fetcher := NewElasticFetcher(client) + license, err := fetcher.Fetch() + + if err != nil { + return errors.Wrapf(err, "cannot retrieve the elasticsearch license") + } + + if license == OSSLicense { + return errors.New("This Beat requires the default distribution of Elasticsearch. Please " + + "upgrade to the default distribution of Elasticsearch from elastic.co, or downgrade to " + + "the oss-only distribution of beats") + } + + if !Validate(log, *license, checks...) { + return fmt.Errorf( + "invalid license found, requires a basic or a valid trial license and received %s", + license.Get(), + ) + } + + return nil + } + + elasticsearch.RegisterGlobalCallback(cb) +} diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/license.go b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/license.go new file mode 100644 index 00000000000..09a2d19597f --- /dev/null +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/license.go @@ -0,0 +1,117 @@ +// 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. + +package licenser + +import ( + "time" +) + +// License represents the license of this beat, the license is fetched and returned from +// the elasticsearch cluster. +// +// The x-pack endpoint returns the following JSON response. +// +// "license": { +// "uid": "936183d8-f48c-4a3f-959a-a52aa2563279", +// "type": "platinum", +// "mode": "platinum", +// "status": "active" +// }, +// +// Definition: +// type is the installed license. +// mode is the license in operation. (effective license) +// status is the type installed is active or not. +type License struct { + UUID string `json:"uid"` + Type LicenseType `json:"type"` + Mode LicenseType `json:"mode"` + Status State `json:"status"` + Features features `json:"features"` + TrialExpiry expiryTime `json:"expiry_date_in_millis,omitempty"` +} + +// Features defines the list of features exposed by the elasticsearch cluster. +type features struct { + Graph graph `json:"graph"` + Logstash logstash `json:"logstash"` + ML ml `json:"ml"` + Monitoring monitoring `json:"monitoring"` + Rollup rollup `json:"rollup"` + Security security `json:"security"` + Watcher watcher `json:"watcher"` +} + +type expiryTime time.Time + +// Base define the field common for every feature. +type Base struct { + Enabled bool `json:"enabled"` + Available bool `json:"available"` +} + +// Defines all the available features +type graph struct{ *Base } +type logstash struct{ *Base } +type ml struct{ *Base } +type monitoring struct{ *Base } +type rollup struct{ *Base } +type security struct{ *Base } +type watcher struct{ *Base } + +// Get return the current license +func (l *License) Get() LicenseType { + return l.Mode +} + +// Cover returns true if the provided license is included in the range of license. +// +// Basic -> match basic, gold and platinum +// gold -> match gold and platinum +// platinum -> match platinum only +func (l *License) Cover(license LicenseType) bool { + if l.Mode >= license { + return true + } + return false +} + +// Is returns true if the provided license is an exact match. +func (l *License) Is(license LicenseType) bool { + return l.Mode == license +} + +// IsActive returns true if the current license from the server is active. +func (l *License) IsActive() bool { + return l.Status == Active +} + +// IsTrial returns true if the remote cluster is in trial mode. +func (l *License) IsTrial() bool { + return l.Mode == Trial +} + +// IsTrialExpired returns false if the we are not in trial mode and when we are in trial mode +// we check for the expiry data. +func (l *License) IsTrialExpired() bool { + if !l.IsTrial() { + return false + } + + if time.Time(l.TrialExpiry).Sub(time.Now()) > 0 { + return false + } + + return true +} + +// EqualTo returns true if the two license are the same, we compare license to reduce the number +// message send to the watchers. +func (l *License) EqualTo(other *License) bool { + return l.UUID == other.UUID && + l.Type == other.Type && + l.Mode == other.Mode && + l.Status == other.Status +} diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/licensetype_string.go b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/licensetype_string.go new file mode 100644 index 00000000000..b66f56c7561 --- /dev/null +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/licensetype_string.go @@ -0,0 +1,20 @@ +// 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. + +// Code generated by "stringer -type=LicenseType -linecomment=true"; DO NOT EDIT. + +package licenser + +import "strconv" + +const _LicenseType_name = "Open sourceTrialBasicStandardGoldPlatinum" + +var _LicenseType_index = [...]uint8{0, 11, 16, 21, 29, 33, 41} + +func (i LicenseType) String() string { + if i < 0 || i >= LicenseType(len(_LicenseType_index)-1) { + return "LicenseType(" + strconv.FormatInt(int64(i), 10) + ")" + } + return _LicenseType_name[_LicenseType_index[i]:_LicenseType_index[i+1]] +} diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/manager.go b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/manager.go new file mode 100644 index 00000000000..29495311c54 --- /dev/null +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/manager.go @@ -0,0 +1,354 @@ +// 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. + +package licenser + +import ( + "context" + "errors" + "fmt" + "math/rand" + "sync" + "time" + + "github.com/gofrs/uuid" + + "github.com/elastic/beats/libbeat/common/backoff" + "github.com/elastic/beats/libbeat/logp" +) + +func mustUUIDV4() uuid.UUID { + uuid, err := uuid.NewV4() + if err != nil { + panic(err) + } + return uuid +} + +// OSSLicense default license to use. +var ( + OSSLicense = &License{ + UUID: mustUUIDV4().String(), + Type: OSS, + Mode: OSS, + Status: Active, + Features: features{ + Graph: graph{}, + Logstash: logstash{}, + ML: ml{}, + Monitoring: monitoring{}, + Rollup: rollup{}, + Security: security{}, + Watcher: watcher{}, + }, + } +) + +// Watcher allows a type to receive a new event when a new license is received. +type Watcher interface { + OnNewLicense(license License) + OnManagerStopped() +} + +// Fetcher interface implements the mechanism to retrieve a License. Currently we only +// support license coming from the '/_xpack' rest api. +type Fetcher interface { + Fetch() (*License, error) +} + +// Errors returned by the manager. +var ( + ErrWatcherAlreadyExist = errors.New("watcher already exist") + ErrWatcherDoesntExist = errors.New("watcher doesn't exist") + + ErrManagerStopped = errors.New("license manager is stopped") + ErrNoLicenseFound = errors.New("no license found") + + ErrNoElasticsearchConfig = errors.New("no elasticsearch output configuration found, verify your configuration") +) + +// Backoff values when the remote cluster is not responding. +var ( + maxBackoff = 60 * time.Second + initBackoff = 1 * time.Second + jitterCap = 1000 // 1000 milliseconds +) + +// Manager keeps tracks of license management, it uses a fetcher usually the ElasticFetcher to +// retrieve a licence from a specific cluster. +// +// Starting the manager will start a go routine to periodically query the license fetcher. +// if an error occur on the fetcher we will retry until we successfully +// receive a new license. During that period we start a grace counter, we assume the license is +// still valid during the grace period, when this period expire we will keep retrying but the previous +// license will be invalidated and we will fallback to the OSS license. +// +// Retrieving the current license: +// - Call the `Get()` on the manager instance. +// - Or register a `Watcher` with the manager to receive the new license and acts on it, you will +// also receive an event when the Manager is stopped. +// +// +// Notes: +// - When the manager is started no license is set by default. +// - When a license is invalidated, we fallback to the OSS License and the watchers get notified. +// - Adding a watcher will automatically send the current license to the newly added watcher if +// available. +type Manager struct { + done chan struct{} + sync.RWMutex + wg sync.WaitGroup + fetcher Fetcher + duration time.Duration + gracePeriod time.Duration + license *License + watchers map[Watcher]Watcher + log *logp.Logger +} + +// New takes an elasticsearch client and wraps it into a fetcher, the fetch will handle the JSON +// and response code from the cluster. +func New(client esclient, duration time.Duration, gracePeriod time.Duration) *Manager { + fetcher := NewElasticFetcher(client) + return NewWithFetcher(fetcher, duration, gracePeriod) +} + +// NewWithFetcher takes a fetcher and return a license manager. +func NewWithFetcher(fetcher Fetcher, duration time.Duration, gracePeriod time.Duration) *Manager { + m := &Manager{ + fetcher: fetcher, + duration: duration, + log: logp.NewLogger("license-manager"), + done: make(chan struct{}), + gracePeriod: gracePeriod, + watchers: make(map[Watcher]Watcher), + } + + return m +} + +// AddWatcher register a new watcher to receive events when the license is retrieved or when the manager +// is closed. +func (m *Manager) AddWatcher(watcher Watcher) error { + m.Lock() + defer m.Unlock() + + if _, ok := m.watchers[watcher]; ok { + return ErrWatcherAlreadyExist + } + + m.watchers[watcher] = watcher + + // when we register a new watchers send the current license unless we did not retrieve it. + if m.license != nil { + watcher.OnNewLicense(*m.license) + } + return nil +} + +// RemoveWatcher removes the watcher if it exist or return an error. +func (m *Manager) RemoveWatcher(watcher Watcher) error { + m.Lock() + defer m.Unlock() + if _, ok := m.watchers[watcher]; ok { + delete(m.watchers, watcher) + return nil + } + return ErrWatcherDoesntExist +} + +// Get return the current active license, it can return an error if the manager is stopped or when +// there is no license in the manager, Instead of querying the Manager it is easier to register a +// watcher to listen to license change. +func (m *Manager) Get() (*License, error) { + m.Lock() + defer m.Unlock() + + select { + case <-m.done: + return nil, ErrManagerStopped + default: + if m.license == nil { + return nil, ErrNoLicenseFound + } + return m.license, nil + } +} + +// Start starts the License manager, the manager will start a go routine to periodically +// retrieve the license from the fetcher. +func (m *Manager) Start() { + // First update should be in sync at startup to ensure a + // consistent state. + m.log.Info("License manager started, retrieving initial license") + m.wg.Add(1) + go m.worker() +} + +// Stop terminates the license manager, the go routine will be stopped and the cached license will +// be removed and no more checks can be done on the manager. +func (m *Manager) Stop() { + select { + case <-m.done: + m.log.Error("License manager already stopped") + default: + } + + defer m.log.Info("License manager stopped") + defer m.notify(func(w Watcher) { + w.OnManagerStopped() + }) + + // stop the periodic check license and wait for it to complete + close(m.done) + m.wg.Wait() + + // invalidate current license + m.Lock() + defer m.Unlock() + m.license = nil +} + +func (m *Manager) notify(op func(Watcher)) { + m.RLock() + defer m.RUnlock() + + if len(m.watchers) == 0 { + m.log.Debugf("No watchers configured") + return + } + + m.log.Debugf("Notifying %d watchers", len(m.watchers)) + for _, w := range m.watchers { + op(w) + } +} + +func (m *Manager) worker() { + defer m.wg.Done() + m.log.Debugf("Starting periodic license check, refresh: %s grace: %s ", m.duration, m.gracePeriod) + defer m.log.Debug("Periodic license check is stopped") + + jitter := rand.Intn(jitterCap) + + // Add some jitter to space requests from a large fleet of beats. + select { + case <-time.After(time.Duration(jitter) * time.Millisecond): + } + + // eager initial check. + m.update() + + // periodically checks license. + for { + select { + case <-m.done: + return + case <-time.After(m.duration): + m.log.Debug("License is too old, updating, grace period: %s", m.gracePeriod) + m.update() + } + } +} + +func (m *Manager) update() { + backoff := backoff.NewEqualJitterBackoff(m.done, initBackoff, maxBackoff) + startedAt := time.Now() + for { + select { + case <-m.done: + return + default: + license, err := m.fetcher.Fetch() + if err != nil { + m.log.Infof("Cannot retrieve license, retrying later, error: %+v", err) + + // check if the license is still in the grace period. + // permit some operations if the license could not be checked + // right away. This is to smooth any networks problems. + if grace := time.Now().Sub(startedAt); grace > m.gracePeriod { + m.log.Info("Grace period expired, invalidating license") + m.invalidate() + } else { + m.log.Debugf("License is too old, grace time remaining: %s", m.gracePeriod-grace) + } + + backoff.Wait() + continue + } + + // we have a valid license, notify watchers and sleep until next check. + m.log.Infow( + "Valid license retrieved", + "license mode", + license.Get(), + "type", + license.Type, + "status", + license.Status, + ) + m.saveAndNotify(license) + return + } + } +} + +func (m *Manager) saveAndNotify(license *License) { + if !m.save(license) { + return + } + + l := *license + m.notify(func(w Watcher) { + w.OnNewLicense(l) + }) +} + +func (m *Manager) save(license *License) bool { + m.Lock() + defer m.Unlock() + + // License didn't change no need to notify watchers. + if m.license != nil && m.license.EqualTo(license) { + return false + } + defer m.log.Debug("License information updated") + + m.license = license + return true +} + +func (m *Manager) invalidate() { + defer m.log.Debug("Invalidate cached license, fallback to OSS") + m.saveAndNotify(OSSLicense) +} + +// WaitForLicense transforms the async manager into a sync check, this is useful if you want +// to block you application until you have received an initial license from the cluster, the manager +// is not affected and will stay asynchronous. +func WaitForLicense(ctx context.Context, log *logp.Logger, manager *Manager, checks ...CheckFunc) (err error) { + log.Info("Waiting on synchronous license check") + received := make(chan struct{}) + callback := CallbackWatcher{New: func(license License) { + log.Debug("Validating license") + if !Validate(log, license, checks...) { + err = errors.New("invalid license") + } + close(received) + log.Infof("License is valid, mode: %s", license.Get()) + }} + + if err := manager.AddWatcher(&callback); err != nil { + return err + } + defer manager.RemoveWatcher(&callback) + + select { + case <-ctx.Done(): + return fmt.Errorf("license check was interrupted") + case <-received: + } + + return err +} diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/state_string.go b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/state_string.go new file mode 100644 index 00000000000..eb3144c8dc7 --- /dev/null +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/state_string.go @@ -0,0 +1,20 @@ +// 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. + +// Code generated by "stringer -type=State"; DO NOT EDIT. + +package licenser + +import "strconv" + +const _State_name = "InactiveActive" + +var _State_index = [...]uint8{0, 8, 14} + +func (i State) String() string { + if i < 0 || i >= State(len(_State_index)-1) { + return "State(" + strconv.FormatInt(int64(i), 10) + ")" + } + return _State_name[_State_index[i]:_State_index[i+1]] +} diff --git a/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/types.go b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/types.go new file mode 100644 index 00000000000..3c5c51a6b08 --- /dev/null +++ b/vendor/github.com/elastic/beats/x-pack/libbeat/licenser/types.go @@ -0,0 +1,27 @@ +// 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. + +package licenser + +// LicenseType defines what kind of license is currently available. +type LicenseType int + +//go:generate stringer -type=LicenseType -linecomment=true +const ( + OSS LicenseType = iota // Open source + Trial // Trial + Basic // Basic + Standard // Standard + Gold // Gold + Platinum // Platinum +) + +// State of the license can be active or inactive. +type State int + +//go:generate stringer -type=State +const ( + Inactive State = iota + Active +) diff --git a/vendor/github.com/elastic/go-sysinfo/providers/linux/container.go b/vendor/github.com/elastic/go-sysinfo/providers/linux/container.go index 45a8e9b6f36..cfacf013d12 100644 --- a/vendor/github.com/elastic/go-sysinfo/providers/linux/container.go +++ b/vendor/github.com/elastic/go-sysinfo/providers/linux/container.go @@ -21,6 +21,7 @@ import ( "bufio" "bytes" "io/ioutil" + "os" "github.com/pkg/errors" ) @@ -31,6 +32,10 @@ const procOneCgroup = "/proc/1/cgroup" func IsContainerized() (bool, error) { data, err := ioutil.ReadFile(procOneCgroup) if err != nil { + if os.IsNotExist(err) { + return false, nil + } + return false, errors.Wrap(err, "failed to read process cgroups") } diff --git a/vendor/github.com/elastic/go-sysinfo/providers/linux/machineid.go b/vendor/github.com/elastic/go-sysinfo/providers/linux/machineid.go index b5ff0538564..a84d085c9ea 100644 --- a/vendor/github.com/elastic/go-sysinfo/providers/linux/machineid.go +++ b/vendor/github.com/elastic/go-sysinfo/providers/linux/machineid.go @@ -27,11 +27,37 @@ import ( "github.com/elastic/go-sysinfo/types" ) +var ( + // Possible (current and historic) locations of the machine-id file. + // These will be searched in order. + machineIDFiles = []string{"/etc/machine-id", "/var/lib/dbus/machine-id", "/var/db/dbus/machine-id"} +) + func MachineID() (string, error) { - id, err := ioutil.ReadFile("/etc/machine-id") + var contents []byte + var err error + + for _, file := range machineIDFiles { + contents, err = ioutil.ReadFile(file) + if err != nil { + if os.IsNotExist(err) { + // Try next location + continue + } + + // Return with error on any other error + return "", errors.Wrapf(err, "failed to read %v", file) + } + + // Found it + break + } + if os.IsNotExist(err) { + // None of the locations existed return "", types.ErrNotImplemented } - id = bytes.TrimSpace(id) - return string(id), errors.Wrap(err, "failed to read machine-id") + + contents = bytes.TrimSpace(contents) + return string(contents), nil } diff --git a/vendor/github.com/elastic/go-sysinfo/providers/linux/os.go b/vendor/github.com/elastic/go-sysinfo/providers/linux/os.go index a54c1d3258a..d4daedd506f 100644 --- a/vendor/github.com/elastic/go-sysinfo/providers/linux/os.go +++ b/vendor/github.com/elastic/go-sysinfo/providers/linux/os.go @@ -47,9 +47,10 @@ var ( versionRegexp = regexp.MustCompile(versionGrok) ) +// familyMap contains a mapping of family -> []platforms. var familyMap = map[string][]string{ - "redhat": {"redhat", "fedora", "centos", "scientific", "oraclelinux", "amazon"}, - "debian": {"debian", "ubuntu"}, + "redhat": {"redhat", "fedora", "centos", "scientific", "oraclelinux", "amzn", "rhel"}, + "debian": {"debian", "ubuntu", "raspbian"}, "suse": {"suse", "sles", "opensuse"}, } diff --git a/vendor/vendor.json b/vendor/vendor.json index cdb6af95089..54953dc3c1a 100644 --- a/vendor/vendor.json +++ b/vendor/vendor.json @@ -6,1098 +6,1106 @@ "checksumSHA1": "eruIVA8JnsB23rVKjETHvqJ0sj8=", "origin": "github.com/elastic/beats/vendor/github.com/DataDog/zstd", "path": "github.com/DataDog/zstd", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "AzjRkOQtVBTwIw4RJLTygFhJs3s=", "origin": "github.com/elastic/beats/vendor/github.com/Microsoft/go-winio", "path": "github.com/Microsoft/go-winio", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Yn3uTky/UjksI76cPRAxXomzMKM=", "origin": "github.com/elastic/beats/vendor/github.com/Shopify/sarama", "path": "github.com/Shopify/sarama", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "DYv6Q1+VfnUVxMwvk5IshAClLvw=", "origin": "github.com/elastic/beats/vendor/github.com/Sirupsen/logrus", "path": "github.com/Sirupsen/logrus", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Te1xRugxHQMAg7EvbIUuPWm8fvU=", "origin": "github.com/elastic/beats/vendor/github.com/StackExchange/wmi", "path": "github.com/StackExchange/wmi", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "dvabztWVQX8f6oMLRyv4dLH+TGY=", "origin": "github.com/elastic/beats/vendor/github.com/davecgh/go-spew/spew", "path": "github.com/davecgh/go-spew/spew", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Gj+xR1VgFKKmFXYOJMnAczC3Znk=", "origin": "github.com/elastic/beats/vendor/github.com/docker/distribution/digestset", "path": "github.com/docker/distribution/digestset", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "2Fe4D6PGaVE2he4fUeenLmhC1lE=", "origin": "github.com/elastic/beats/vendor/github.com/docker/distribution/reference", "path": "github.com/docker/distribution/reference", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "UL2NF1EGiSsQoEfvycnuZIcUbZY=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api", "path": "github.com/docker/docker/api", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "KMFpbV3mlrbc41d2DYnq05QYpSc=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types", "path": "github.com/docker/docker/api/types", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "jVJDbe0IcyjoKc2xbohwzQr+FF0=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/blkiodev", "path": "github.com/docker/docker/api/types/blkiodev", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "AeSC0BOu1uapkGqfSXtfVSpwJzs=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/container", "path": "github.com/docker/docker/api/types/container", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "4XuWn5+wgYwUsw604jvYMklq4Hc=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/events", "path": "github.com/docker/docker/api/types/events", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "J2OKngfI3vgswudr9PZVUFcRRu0=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/filters", "path": "github.com/docker/docker/api/types/filters", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "yeB781yxPhnN6OXQ9/qSsyih3ek=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/image", "path": "github.com/docker/docker/api/types/image", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "UK+VdM648oWzyqE4OqttgmPqjoA=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/mount", "path": "github.com/docker/docker/api/types/mount", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Gskp+nvbVe8Gk1xPLHylZvNmqTg=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/network", "path": "github.com/docker/docker/api/types/network", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "r2vWq7Uc3ExKzMqYgH0b4AKjLKY=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/registry", "path": "github.com/docker/docker/api/types/registry", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "VTxWyFud/RedrpllGdQonVtGM/A=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/strslice", "path": "github.com/docker/docker/api/types/strslice", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ZaizCpJ3eBcfR9ywpLaJd4AhM9k=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/swarm", "path": "github.com/docker/docker/api/types/swarm", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "B7ZwKzrv3t3Vlox6/bYMHhMjsM8=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/time", "path": "github.com/docker/docker/api/types/time", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "uDPQ3nHsrvGQc9tg/J9OSC4N5dQ=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/versions", "path": "github.com/docker/docker/api/types/versions", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "IBJy2zPEnYmcFJ3lM1eiRWnCxTA=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/api/types/volume", "path": "github.com/docker/docker/api/types/volume", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "c6OyeEvpQDvVLhrJSxgjEZv1tF8=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/client", "path": "github.com/docker/docker/client", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "jmo/t2zXAxirEPoFucNPXA/1SEc=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/pkg/ioutils", "path": "github.com/docker/docker/pkg/ioutils", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ndnAFCfsGC3upNQ6jAEwzxcurww=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/pkg/longpath", "path": "github.com/docker/docker/pkg/longpath", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "kr46EAa+FsUcWxOq6edyX6BUzE4=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/pkg/system", "path": "github.com/docker/docker/pkg/system", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "8I0Ez+aUYGpsDEVZ8wN/Ztf6Zqs=", "origin": "github.com/elastic/beats/vendor/github.com/docker/docker/pkg/tlsconfig", "path": "github.com/docker/docker/pkg/tlsconfig", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "JbiWTzH699Sqz25XmDlsARpMN9w=", "origin": "github.com/elastic/beats/vendor/github.com/docker/go-connections/nat", "path": "github.com/docker/go-connections/nat", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "jUfDG3VQsA2UZHvvIXncgiddpYA=", "origin": "github.com/elastic/beats/vendor/github.com/docker/go-connections/sockets", "path": "github.com/docker/go-connections/sockets", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "tuSzlS1UQ03+5Fvtqr5hI5sLLhA=", "origin": "github.com/elastic/beats/vendor/github.com/docker/go-connections/tlsconfig", "path": "github.com/docker/go-connections/tlsconfig", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ambe8F4AofPxChCJssXXwWphQQ8=", "origin": "github.com/elastic/beats/vendor/github.com/docker/go-units", "path": "github.com/docker/go-units", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "sNAU9ojYVUhO6dVXey6T3JhRQpw=", "origin": "github.com/elastic/beats/vendor/github.com/docker/libtrust", "path": "github.com/docker/libtrust", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "rhLUtXvcmouYuBwOq9X/nYKzvNg=", "origin": "github.com/elastic/beats/vendor/github.com/dustin/go-humanize", "path": "github.com/dustin/go-humanize", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "y2Kh4iPlgCPXSGTCcFpzePYdzzg=", "origin": "github.com/elastic/beats/vendor/github.com/eapache/go-resiliency/breaker", "path": "github.com/eapache/go-resiliency/breaker", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "WHl96RVZlOOdF4Lb1OOadMpw8ls=", "origin": "github.com/elastic/beats/vendor/github.com/eapache/go-xerial-snappy", "path": "github.com/eapache/go-xerial-snappy", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "oCCs6kDanizatplM5e/hX76busE=", "origin": "github.com/elastic/beats/vendor/github.com/eapache/queue", "path": "github.com/eapache/queue", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { - "checksumSHA1": "hc49t8t/a1QDbDQ3KMPBGEYxocQ=", + "checksumSHA1": "X1W+5VRVoE0q+dWQC42IUnIrbOI=", "path": "github.com/elastic/beats/dev-tools/mage", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "PBTxyr6OotF2pda9n8gMeGUkfLA=", "path": "github.com/elastic/beats/filebeat/generator", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "cDyXG8WG+dr1ai7qCnhbJ6N3OyY=", "path": "github.com/elastic/beats/filebeat/scripts/generator", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "y34pfVnTprxa4BvLKfiBbqTJaGA=", "path": "github.com/elastic/beats/libbeat/api", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "3cMzsLhs9W65wKpzZLiSB4i73mc=", "path": "github.com/elastic/beats/libbeat/asset", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "+XIt3467v/mRmLoIs6stBev5kUY=", "path": "github.com/elastic/beats/libbeat/autodiscover", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "ZCQyqZn3NFfAJo//PSd1YASvytY=", "path": "github.com/elastic/beats/libbeat/autodiscover/appenders/config", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "pW/XBpb2BIceplyuoqvwTtowH7c=", "path": "github.com/elastic/beats/libbeat/autodiscover/builder", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "IifZH9hzzPymGV2XQfQ/tFR4uSE=", "path": "github.com/elastic/beats/libbeat/autodiscover/meta", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "EwWOqMM1fNA3/dem/aWABreI0+8=", "path": "github.com/elastic/beats/libbeat/autodiscover/providers/docker", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "m9yIpAuVVFufXqxoxsRwj1WFWQk=", "path": "github.com/elastic/beats/libbeat/autodiscover/providers/jolokia", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "RSyTFQht0Ub7y0VjGA9QVYaXoMA=", "path": "github.com/elastic/beats/libbeat/autodiscover/providers/kubernetes", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "eaKz8KWZXYHpLvBCIRN3V8J7G18=", "path": "github.com/elastic/beats/libbeat/autodiscover/template", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "zW6u9jQc4JcCxZvt/BbnD3ezX9U=", "path": "github.com/elastic/beats/libbeat/beat", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "WTJu5thCAkzlalDS0POgNIlNisA=", "path": "github.com/elastic/beats/libbeat/cfgfile", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "/IuTlhYU7mcJKhOHniR06bWGnxg=", "path": "github.com/elastic/beats/libbeat/cloudid", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "lyuno/JUPU/De5CmWKmJVN+KWgk=", + "checksumSHA1": "yfFh5TbZE56TmMV87ORakzRtLRc=", "path": "github.com/elastic/beats/libbeat/cmd", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "iGV716P1H+4sFSGJdHew23eUOnE=", "path": "github.com/elastic/beats/libbeat/cmd/export", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "J75fVRY5PwD8cd9mnMAziSK0vtE=", + "checksumSHA1": "K8tRHL2Ypah4SMhpK0Ey1uzlf34=", "path": "github.com/elastic/beats/libbeat/cmd/instance", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "FZW7PkwBFzSm0Y3qoz4pgYL17Qs=", "path": "github.com/elastic/beats/libbeat/cmd/test", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "s1cP5BClfRHukdY4IrpEMsH8m9k=", + "checksumSHA1": "RQWkSqf5YV509sfDOXH4IVHZbC8=", "path": "github.com/elastic/beats/libbeat/common", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "lFYRu/M9CL6/povZOeBYui9/laI=", "path": "github.com/elastic/beats/libbeat/common/atomic", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "O5lD0j+tTM5lZkSzPE9KaxiHTeY=", "path": "github.com/elastic/beats/libbeat/common/backoff", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "Fxbw/7lPbh9dY3HH5k8sc4PU6Yo=", "path": "github.com/elastic/beats/libbeat/common/bus", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "zRpP/UzB/wFQNLceGdVgC4QqviM=", "path": "github.com/elastic/beats/libbeat/common/cfgtype", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "d0pIynyart5HMe7IKw3wtIH2R48=", "path": "github.com/elastic/beats/libbeat/common/cfgwarn", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "gagye6XHCqSCAVjpdJAGSOd06Uw=", "path": "github.com/elastic/beats/libbeat/common/cli", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "Ps5fuDikiF/KR7BeQqRkIztHxVY=", "path": "github.com/elastic/beats/libbeat/common/docker", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "Gxdi0z5FpIG68TQBD+zho4pEBlU=", "path": "github.com/elastic/beats/libbeat/common/dtfmt", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "EVdZcCfcyrMUtePDFMOSBxkS71M=", "path": "github.com/elastic/beats/libbeat/common/file", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "pt4OCbyb9z7fgJEidmOx6mua0h8=", "path": "github.com/elastic/beats/libbeat/common/fmtstr", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "K8hsg9OHpVHm7A43uq+TdX5DRc4=", "path": "github.com/elastic/beats/libbeat/common/jsontransform", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "syBGSam2yNQZRz41QgXaAOWWQn4=", "path": "github.com/elastic/beats/libbeat/common/kafka", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "/0orukOMfUZKhGiGDaMcVcEf5xA=", "path": "github.com/elastic/beats/libbeat/common/kubernetes", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "tX/nsD/KEE0KCWECoPyx5CHNPdc=", "path": "github.com/elastic/beats/libbeat/common/match", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "jLi8S5eaG9uPawGF105+Z8dkesc=", "path": "github.com/elastic/beats/libbeat/common/reload", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "uMo9yaQAFfFG9iOsmdhQokffvpc=", "path": "github.com/elastic/beats/libbeat/common/safemapstr", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "719FzIxi7bvpmh3Z1Ugn1VzY7Ro=", "path": "github.com/elastic/beats/libbeat/common/schema", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "uffmniMUvoDPoH/udr7ogkh062E=", "path": "github.com/elastic/beats/libbeat/common/schema/mapstriface", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "tZSvsfUQvhPhFjowAUkRntjtuCc=", "path": "github.com/elastic/beats/libbeat/common/seccomp", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "idXNC65t9dEVukD08AM6/L2p/RE=", "path": "github.com/elastic/beats/libbeat/common/streambuf", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "IQGJeUodp0fl4Zy8W1rBzWtWSWA=", "path": "github.com/elastic/beats/libbeat/common/terminal", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "NByKtWaf9vFTp6K338x8XA1xycw=", "path": "github.com/elastic/beats/libbeat/common/transport/tlscommon", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "E50QfAprh0Wnfcwcj270Fd0LDwk=", "path": "github.com/elastic/beats/libbeat/conditions", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "LRrDnnMknoFSPRwm8FvQvsrRZhY=", "path": "github.com/elastic/beats/libbeat/dashboards", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "Tn+4O4FlSxSOxGF9qkH363wQCtA=", "path": "github.com/elastic/beats/libbeat/feature", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "4cf2wL/oJiHEvg30ZTVEmxN4y/I=", "path": "github.com/elastic/beats/libbeat/generator/fields", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "318/8WL2KiTQNBbBWiBE6iFKoFg=", + "checksumSHA1": "qhBHCrlloc6YzhajEN0yDq51ZAA=", "path": "github.com/elastic/beats/libbeat/idxmgmt", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "dFrKmkaPypSJvQw5WaW0WqEFjuI=", + "checksumSHA1": "NXH74rcFFG9jfB/4ZH4UtOIpC4s=", "path": "github.com/elastic/beats/libbeat/idxmgmt/ilm", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "j5i6ROmrRwEmAlvU4MtLZuUyxfU=", + "checksumSHA1": "krdjLK+gZhQpyqW24pQygLa57/I=", "path": "github.com/elastic/beats/libbeat/keystore", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "CIzaDBvvAm7uC1OhoSr4mhaPgoQ=", "path": "github.com/elastic/beats/libbeat/kibana", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "M9mSRhP65Jnf/yk2qtZU6FM9OUw=", "path": "github.com/elastic/beats/libbeat/logp", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "bM+Zvy63NmXBfPQZYZmWBCo/UIk=", "path": "github.com/elastic/beats/libbeat/logp/configure", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "F/nzOXIrS9ui9wBLhuYa6M0fDEw=", "path": "github.com/elastic/beats/libbeat/management", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "/qNmzEvnTPNTKsZG8NgDzJZ+6f8=", "path": "github.com/elastic/beats/libbeat/metric/system/cpu", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "ASezoo5ifdtv1UwROTGAu+VbNJA=", "path": "github.com/elastic/beats/libbeat/metric/system/host", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "lXmDdjbZAQJWerhniNifgiD+Fgs=", "path": "github.com/elastic/beats/libbeat/metric/system/memory", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "+cI2jq/bUsjqPA7RsN9SJ8nE4xc=", "path": "github.com/elastic/beats/libbeat/metric/system/process", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "JaqeGyZo3TRATCeVaKSZ9+K+O5E=", "path": "github.com/elastic/beats/libbeat/monitoring", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "+wdf9YlsiFYofUdPuovqskNoZnw=", "path": "github.com/elastic/beats/libbeat/monitoring/adapter", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "8rqXWL9EN+JXokIj4mNhd7GKXNY=", "path": "github.com/elastic/beats/libbeat/monitoring/report", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "rHZObWsjW4NyhmusnQna7zGUfaU=", "path": "github.com/elastic/beats/libbeat/monitoring/report/elasticsearch", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "FJhQn6mS1pcNkFLFjFPulLZjC9w=", "path": "github.com/elastic/beats/libbeat/monitoring/report/log", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "ueIlWpPNgtKmH9MINun26RPPY2k=", "path": "github.com/elastic/beats/libbeat/outputs", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "CsWdZfYNuwBA2/RhAybzEf93qq4=", "path": "github.com/elastic/beats/libbeat/outputs/codec", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "dO9pXcIpo6PH5yxMbJUSb/BYbkc=", "path": "github.com/elastic/beats/libbeat/outputs/codec/format", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "DbeMJiVepl/K4NXgWHHc2KyCpg0=", "path": "github.com/elastic/beats/libbeat/outputs/codec/json", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "oGzibF8p3OLvTRGLoQi+ny7zN5A=", "path": "github.com/elastic/beats/libbeat/outputs/console", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "artwQ4UfRk+XgWW3PaAVEv5lyok=", + "checksumSHA1": "Y8enGbqkxn1alc27+3K2xj8K6X0=", "path": "github.com/elastic/beats/libbeat/outputs/elasticsearch", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "tMYYeBk2SmTet6FUrltPtfeCY/U=", "path": "github.com/elastic/beats/libbeat/outputs/fileout", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "HJfOlEyj6ML3keAgWaBw/L/QEsY=", "path": "github.com/elastic/beats/libbeat/outputs/kafka", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "0YSMsaDcPs65eNX2CJBtTy24aGg=", "path": "github.com/elastic/beats/libbeat/outputs/logstash", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "NJv+STaa3bEOeVra8WkEgOtzQic=", "path": "github.com/elastic/beats/libbeat/outputs/outil", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "FXa52r8DUyJyiSRI6SjErh6PHds=", "path": "github.com/elastic/beats/libbeat/outputs/redis", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "ThEQrqa9WEUapIawwzyIvVZjnXQ=", "path": "github.com/elastic/beats/libbeat/outputs/transport", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "qPVudVlj4dE+HHMe4WGlaf4mFCo=", "path": "github.com/elastic/beats/libbeat/outputs/transport/transptest", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "hb8M4qSLzgDXpQmdQfEyB7aChhI=", "path": "github.com/elastic/beats/libbeat/paths", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "OVd5zDYdT/3QK2zj1M+BMPP0AIo=", "path": "github.com/elastic/beats/libbeat/plugin", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "lhUKTNKAJqUl7dgyZN8En9B2Vnw=", "path": "github.com/elastic/beats/libbeat/processors", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "YXrUdy69ur3Vr7+0E7tJbleTKIE=", "path": "github.com/elastic/beats/libbeat/processors/actions", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "EFb8JSQjBV+exv64LrzAzosv+VI=", "path": "github.com/elastic/beats/libbeat/processors/add_cloud_metadata", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "+du/yK51pLLSQ8V4t2IuDsD8Kl8=", + "checksumSHA1": "s4sndCKKdFF1s55hdMD8C42qvoA=", "path": "github.com/elastic/beats/libbeat/processors/add_docker_metadata", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "O2+13p4BQ8zwBdKP1CTXg07FneA=", "path": "github.com/elastic/beats/libbeat/processors/add_host_metadata", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "PGsBuH7EkCUdOTdnZIePSemWT9A=", "path": "github.com/elastic/beats/libbeat/processors/add_kubernetes_metadata", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "GuCfa00ie8z+j57QYlZK3eRow2Y=", "path": "github.com/elastic/beats/libbeat/processors/add_locale", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "k8VzQtW0F61GAR9U/sU9opAUimU=", "path": "github.com/elastic/beats/libbeat/processors/add_process_metadata", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "tDlkiqQL3vTTh8jLS1JBwhZMC7o=", "path": "github.com/elastic/beats/libbeat/processors/dissect", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "6YfWrbwMSQ7clCDTVFK3afNai3o=", "path": "github.com/elastic/beats/libbeat/processors/dns", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "7kYMLJJXmsDd9GyXgq9Z9eJdqrk=", "path": "github.com/elastic/beats/libbeat/publisher", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "3lRU4d8X4NyPiCAml4LjDm3o928=", "path": "github.com/elastic/beats/libbeat/publisher/includes", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "z5QPa207EQ5uQ/uRroxU1U4DtYk=", "path": "github.com/elastic/beats/libbeat/publisher/pipeline", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "8wiczYiVOBkEqtK/tYPZA47BZGw=", "path": "github.com/elastic/beats/libbeat/publisher/processing", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "RaONy2th8fDi9BF5U+lYu5bto4Y=", "path": "github.com/elastic/beats/libbeat/publisher/queue", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "ZUwitg43Gan3j0V+ZjM+5Y/ibb8=", "path": "github.com/elastic/beats/libbeat/publisher/queue/memqueue", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "dkG+1gq5pvcpU9f8BUZMEg+9oTI=", "path": "github.com/elastic/beats/libbeat/publisher/queue/spool", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "fZ5S9LEZUcy5JlhwpHBn4MGNjOg=", "path": "github.com/elastic/beats/libbeat/publisher/testing", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "vZZFb4M2d2t7tG3n2UEQeTk/lEM=", "path": "github.com/elastic/beats/libbeat/scripts/cmd/global_fields", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "/645Ga6dGiQjHQIBSct5CYaRoj8=", "path": "github.com/elastic/beats/libbeat/service", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "xR0FaDP98Ns/iKnOs1UngSktkCE=", + "checksumSHA1": "xQ8ZJL681i3UWoeiss8hPJpDc+k=", "path": "github.com/elastic/beats/libbeat/template", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "Ifly/yeBS+Ok0/PKez4lSqzu8JI=", "path": "github.com/elastic/beats/libbeat/testing", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "+0zBIGqXGbgm86imWcTq9kQyTgw=", "path": "github.com/elastic/beats/libbeat/version", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "YRKEeQXsNj81zjG9gpkCyVpLKJs=", "path": "github.com/elastic/beats/licenses", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { - "checksumSHA1": "Vl1igE22krcde7qc4mJCYOwH3A8=", + "checksumSHA1": "cUrFMhDnU7TaDevT/2ktmlFZdGQ=", "path": "github.com/elastic/beats/x-pack/libbeat/cmd", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", + "version": "7.0", + "versionExact": "7.0" + }, + { + "checksumSHA1": "k4fgaYBFVNNyURWitIpBn9jInXM=", + "path": "github.com/elastic/beats/x-pack/libbeat/licenser", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "BXG8Wgilh8a06LG1kFvDUKr5jDo=", "path": "github.com/elastic/beats/x-pack/libbeat/management", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, { "checksumSHA1": "l0SUMNSwlrzNBxjF18cedi+xGR8=", "path": "github.com/elastic/beats/x-pack/libbeat/management/api", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z", + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z", "version": "7.0", "versionExact": "7.0" }, @@ -1111,519 +1119,519 @@ "checksumSHA1": "3jizmlZPCyo6FAZY8Trk9jA8NH4=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-lumber/client/v2", "path": "github.com/elastic/go-lumber/client/v2", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "m6HLKpDAZlkTTQMqabf3aT6TQ/s=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-lumber/protocol/v2", "path": "github.com/elastic/go-lumber/protocol/v2", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "TatpgVf9fhQp1GtNwSyNw5cgVKM=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-seccomp-bpf", "path": "github.com/elastic/go-seccomp-bpf", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "qTs7QT+GC2Dr4aFoLFHCkAOoVeU=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-seccomp-bpf/arch", "path": "github.com/elastic/go-seccomp-bpf/arch", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "W459MQNQ8qF6qmzLO/QLevTKZlU=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-structform", "path": "github.com/elastic/go-structform", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "BnoVvQlbw1jk1oveTVQtG+dhGRs=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-structform/cborl", "path": "github.com/elastic/go-structform/cborl", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "xjEIhANt0tAq4FjndVCLQhCXkQo=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-structform/gotype", "path": "github.com/elastic/go-structform/gotype", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "BIRSw/+jqs6VTgRx4MXJy453oGQ=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-structform/internal/unsafe", "path": "github.com/elastic/go-structform/internal/unsafe", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "VPkz0hvtlbDDObJJZoTrjF2CN68=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-structform/json", "path": "github.com/elastic/go-structform/json", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "zRLY43OHR3VYw3fu3XznhxziC4E=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-structform/ubjson", "path": "github.com/elastic/go-structform/ubjson", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "QC8/6yQsm4f+zZo14ExnFtyiaXk=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-structform/visitors", "path": "github.com/elastic/go-structform/visitors", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "QhFIpuHPaV6hKejKcc2wm6y4MSQ=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-sysinfo", "path": "github.com/elastic/go-sysinfo", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "GiZCjX17K265TtamGZZw4R2Jwbk=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-sysinfo/internal/registry", "path": "github.com/elastic/go-sysinfo/internal/registry", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ovafihHzpBx9Y7+lZh9X5KwNCvE=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-sysinfo/providers/darwin", "path": "github.com/elastic/go-sysinfo/providers/darwin", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { - "checksumSHA1": "AK76ZxnuvK02Dfpmj7b2TD/aiSI=", + "checksumSHA1": "OyI+VwDiT4UZjncsDr1GYg1xcdw=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-sysinfo/providers/linux", "path": "github.com/elastic/go-sysinfo/providers/linux", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "RWLvcP1w9ynKbuCqiW6prwd+EDU=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-sysinfo/providers/shared", "path": "github.com/elastic/go-sysinfo/providers/shared", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "aF05MEkMjbRekzHlwFxmd5WBpeY=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-sysinfo/providers/windows", "path": "github.com/elastic/go-sysinfo/providers/windows", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "MLQioPEjULYbNqqCjfB1/cux08E=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-sysinfo/types", "path": "github.com/elastic/go-sysinfo/types", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "bNf3GDGhZh86bfCIMM5c5AYfo3g=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile", "path": "github.com/elastic/go-txfile", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "scDqDI8APDj/tB973/ehmPufSLc=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/dev-tools/lib/mage/gotool", "path": "github.com/elastic/go-txfile/dev-tools/lib/mage/gotool", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "/WzE2caCHChUpoRAlXDU5uLTU5I=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/dev-tools/lib/mage/mgenv", "path": "github.com/elastic/go-txfile/dev-tools/lib/mage/mgenv", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "kD/TFYofNqdOjb0nMN0w3LC/nNU=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/dev-tools/lib/mage/xbuild", "path": "github.com/elastic/go-txfile/dev-tools/lib/mage/xbuild", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "re2W5hqGml/Q8vnx+DT3ooUNWxo=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/internal/cleanup", "path": "github.com/elastic/go-txfile/internal/cleanup", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "HjNNDapvfXgOJqs7l7pS3ho6SSI=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/internal/invariant", "path": "github.com/elastic/go-txfile/internal/invariant", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "HLMF+V6Pt3YLUNOgmd2nR+vz9vM=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/internal/iter", "path": "github.com/elastic/go-txfile/internal/iter", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "EAIqvdq5S3FNBoTBAI/U02AwTSU=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/internal/strbld", "path": "github.com/elastic/go-txfile/internal/strbld", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "lejstOrGPfa+tJohvIOK/AjdLa4=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/internal/vfs", "path": "github.com/elastic/go-txfile/internal/vfs", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Wqp2VCpbcmfOFuZJrYkaxpvQQrE=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/internal/vfs/osfs", "path": "github.com/elastic/go-txfile/internal/vfs/osfs", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "LYeqHmalUZgk3oOHtJyPOKlM/j4=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/pq", "path": "github.com/elastic/go-txfile/pq", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "fCx++6A9uzyCsDUanAIJb77u0MI=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-txfile/txerr", "path": "github.com/elastic/go-txfile/txerr", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "b91TSC0atoGVSMZdKuWTYsMOGiM=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-ucfg", "path": "github.com/elastic/go-ucfg", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "X+R/CD8SokJrmlxFTx2nSevRDhQ=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-ucfg/cfgutil", "path": "github.com/elastic/go-ucfg/cfgutil", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "/pq8HNEdzHmky9S9HSo1WofXQ4Y=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-ucfg/flag", "path": "github.com/elastic/go-ucfg/flag", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "esXpiQlEvTOUwsE0nNesso8albo=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-ucfg/internal/parse", "path": "github.com/elastic/go-ucfg/internal/parse", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "cfMNsyQm0gZOV0hRJrBSdKDQSBo=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-ucfg/json", "path": "github.com/elastic/go-ucfg/json", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "PJCBACDGPhnRAEqjGPMPCMjbj4o=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-ucfg/yaml", "path": "github.com/elastic/go-ucfg/yaml", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "rnd3qf1FE22X3MxXWbetqq6EoBk=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/go-windows", "path": "github.com/elastic/go-windows", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ux0d5xvItes2abrOlpEyQWeJeqM=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/gosigar", "path": "github.com/elastic/gosigar", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "TX9y4oPL5YmT4Gb/OU4GIPTdQB4=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/gosigar/cgroup", "path": "github.com/elastic/gosigar/cgroup", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "hPqGM3DENaGfipEODoyZ4mKogTQ=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/gosigar/sys", "path": "github.com/elastic/gosigar/sys", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "mLq5lOyD0ZU39ysXuf1ETOLJ+f0=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/gosigar/sys/linux", "path": "github.com/elastic/gosigar/sys/linux", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Xx3lvjjqPwlFQ2aBjxtXSeDmD4c=", "origin": "github.com/elastic/beats/vendor/github.com/elastic/gosigar/sys/windows", "path": "github.com/elastic/gosigar/sys/windows", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Klc34HULvwvY4cGA/D8HmqtXLqw=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s", "path": "github.com/ericchiang/k8s", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "y8fNiBLSoGojnUsGDsdLlsJYyqQ=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/apiextensions/v1beta1", "path": "github.com/ericchiang/k8s/apis/apiextensions/v1beta1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "JxQ/zEWQSrncYNKifCuMctq+Tsw=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/apps/v1beta1", "path": "github.com/ericchiang/k8s/apis/apps/v1beta1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "bjklGt/pc6kWOZewAw87Hchw5oY=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/authentication/v1", "path": "github.com/ericchiang/k8s/apis/authentication/v1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "LExhnM9Vn0LQoLQWszQ7aIxDxb4=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/authentication/v1beta1", "path": "github.com/ericchiang/k8s/apis/authentication/v1beta1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "GM+PzOiBoq3cxx4h5RKVUb3UH60=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/authorization/v1", "path": "github.com/ericchiang/k8s/apis/authorization/v1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "zfr5oUVjbWRfvXi2LJiGMfFeDQY=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/authorization/v1beta1", "path": "github.com/ericchiang/k8s/apis/authorization/v1beta1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "izkXNDp5a5WP45jU0hSfTrwyfvM=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/autoscaling/v1", "path": "github.com/ericchiang/k8s/apis/autoscaling/v1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "FryZuAxWn4Ig8zc913w9BdfYzvs=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/batch/v1", "path": "github.com/ericchiang/k8s/apis/batch/v1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ylo7Z8wyJD+tmICB7wsOVIBpO+U=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/batch/v2alpha1", "path": "github.com/ericchiang/k8s/apis/batch/v2alpha1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "+d8+mSdkdcPWQIpczXDZZW0lrjg=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/certificates/v1beta1", "path": "github.com/ericchiang/k8s/apis/certificates/v1beta1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "S7AvxmCe/+WoFP/v9lZr0Mv66qg=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/core/v1", "path": "github.com/ericchiang/k8s/apis/core/v1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "cWPoP6XZN7WMnEVMPcgPgg3Aw9Q=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/extensions/v1beta1", "path": "github.com/ericchiang/k8s/apis/extensions/v1beta1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "vaNrBPcGWeDd1rXl8+uN08uxWhE=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/imagepolicy/v1alpha1", "path": "github.com/ericchiang/k8s/apis/imagepolicy/v1alpha1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "UNTTH+Ppu4vImnF+bPkG3/NR3gg=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/meta/v1", "path": "github.com/ericchiang/k8s/apis/meta/v1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Mmyg9Wh+FCVR6fV8MGEKRxvqZ2k=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/policy/v1beta1", "path": "github.com/ericchiang/k8s/apis/policy/v1beta1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "bvwYS/wrBkyAfvCjzMbi/vKamrQ=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/rbac/v1alpha1", "path": "github.com/ericchiang/k8s/apis/rbac/v1alpha1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "m1Tde18NwewnvJoOYL3uykNcBuM=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/rbac/v1beta1", "path": "github.com/ericchiang/k8s/apis/rbac/v1beta1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "JirJkoeIkWJRNrbprsQvqwisxds=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/resource", "path": "github.com/ericchiang/k8s/apis/resource", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "rQZ69PjEClQQ+PGEHRKzkGVVQyw=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/settings/v1alpha1", "path": "github.com/ericchiang/k8s/apis/settings/v1alpha1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "pp0AetmPoKy7Rz0zNhBwUpExkbc=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/storage/v1", "path": "github.com/ericchiang/k8s/apis/storage/v1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "WeACcIrS4EkeBm8TTftwuVniaWk=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/apis/storage/v1beta1", "path": "github.com/ericchiang/k8s/apis/storage/v1beta1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Su6wSR8V8HL2QZsF8icJ0R9AFq8=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/runtime", "path": "github.com/ericchiang/k8s/runtime", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "8ETrRvIaXPfD21N7fa8kdbumL00=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/runtime/schema", "path": "github.com/ericchiang/k8s/runtime/schema", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "cMk3HE8/81ExHuEs0F5sZCclOFs=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/util/intstr", "path": "github.com/ericchiang/k8s/util/intstr", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "fobEKiMk5D7IGvCSwh4HdG1o98c=", "origin": "github.com/elastic/beats/vendor/github.com/ericchiang/k8s/watch/versioned", "path": "github.com/ericchiang/k8s/watch/versioned", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "AANTVr9CVVyzsgviODY6Wi2thuM=", "origin": "github.com/elastic/beats/vendor/github.com/fatih/color", "path": "github.com/fatih/color", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "2UmMbNHc8FBr98mJFN1k8ISOIHk=", "origin": "github.com/elastic/beats/vendor/github.com/garyburd/redigo/internal", "path": "github.com/garyburd/redigo/internal", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "507OiSqTxfGCje7xDT5eq9CCaNQ=", "origin": "github.com/elastic/beats/vendor/github.com/garyburd/redigo/redis", "path": "github.com/garyburd/redigo/redis", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ImX1uv6O09ggFeBPUJJ2nu7MPSA=", "origin": "github.com/elastic/beats/vendor/github.com/ghodss/yaml", "path": "github.com/ghodss/yaml", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "2VgF+qja44x3wPTp8U8TZEU6FWw=", "origin": "github.com/elastic/beats/vendor/github.com/go-ole/go-ole", "path": "github.com/go-ole/go-ole", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Q0ZOcJW0fqOefDzEdn+PJHOeSgI=", "origin": "github.com/elastic/beats/vendor/github.com/go-ole/go-ole/oleutil", "path": "github.com/go-ole/go-ole/oleutil", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "OFaReqy4hyrLlTTYFmcqkvidHsQ=", @@ -1649,15 +1657,15 @@ "checksumSHA1": "kBeNcaKk56FguvPSUCEaH6AxpRc=", "origin": "github.com/elastic/beats/vendor/github.com/golang/protobuf/proto", "path": "github.com/golang/protobuf/proto", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "p/8vSviYF91gFflhrt5vkyksroo=", "origin": "github.com/elastic/beats/vendor/github.com/golang/snappy", "path": "github.com/golang/snappy", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "d9PxF1XQGLMJZRct2R8qVM/eYlE=", @@ -1675,29 +1683,29 @@ "checksumSHA1": "40vJyUB4ezQSn/NSadsKEOrudMc=", "origin": "github.com/elastic/beats/vendor/github.com/inconshreveable/mousetrap", "path": "github.com/inconshreveable/mousetrap", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "l9wW52CYGbmO/NGwYZ/Op2QTmaA=", "origin": "github.com/elastic/beats/vendor/github.com/joeshaw/multierror", "path": "github.com/joeshaw/multierror", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "IH4jnWcj4d4h+hgsHsHOWg/F+rk=", "origin": "github.com/elastic/beats/vendor/github.com/jstemmer/go-junit-report/formatter", "path": "github.com/jstemmer/go-junit-report/formatter", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Tx9cQqKFUHzu1l6H2XEl8G7ivlI=", "origin": "github.com/elastic/beats/vendor/github.com/jstemmer/go-junit-report/parser", "path": "github.com/jstemmer/go-junit-report/parser", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "pa+ZwMzIv+u+BlL8Q2xgL9cQtJg=", @@ -1709,36 +1717,36 @@ "checksumSHA1": "KKxbAKrKrfd33YPpkNsDmTN3S+M=", "origin": "github.com/elastic/beats/vendor/github.com/klauspost/compress/flate", "path": "github.com/klauspost/compress/flate", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "+azPXaZpPF14YHRghNAer13ThQU=", "origin": "github.com/elastic/beats/vendor/github.com/klauspost/compress/zlib", "path": "github.com/klauspost/compress/zlib", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "R6zKqn31GjJH1G8W/api7fAW0RU=", "origin": "github.com/elastic/beats/vendor/github.com/klauspost/cpuid", "path": "github.com/klauspost/cpuid", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "BM6ZlNJmtKy3GBoWwg2X55gnZ4A=", "origin": "github.com/elastic/beats/vendor/github.com/klauspost/crc32", "path": "github.com/klauspost/crc32", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ASXhLVfIA2mzHf+7muYxT38JaHU=", "origin": "github.com/elastic/beats/vendor/github.com/magefile/mage", "path": "github.com/magefile/mage", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "KODorM0Am1g55qObNz3jVOdRVFs=", @@ -1751,29 +1759,29 @@ "checksumSHA1": "fHpo/9Tke6VFfZZAT+PRnoNOiiY=", "origin": "github.com/elastic/beats/vendor/github.com/magefile/mage/internal", "path": "github.com/magefile/mage/internal", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "RVSwuhHOfojhN74rfwRe4AktDIA=", "origin": "github.com/elastic/beats/vendor/github.com/magefile/mage/mage", "path": "github.com/magefile/mage/mage", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "irRTBkCBnOGMX+PZhOdHFUckgBY=", "origin": "github.com/elastic/beats/vendor/github.com/magefile/mage/mg", "path": "github.com/magefile/mage/mg", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "QGt/JRmNp+D+lO0hHZsUUyH7y5U=", "origin": "github.com/elastic/beats/vendor/github.com/magefile/mage/parse", "path": "github.com/magefile/mage/parse", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "fEuDveZzYX6oqYOT9jqyZROun/Q=", @@ -1786,15 +1794,15 @@ "checksumSHA1": "4JzH55TcYdctQksrCafgKT8lZRU=", "origin": "github.com/elastic/beats/vendor/github.com/magefile/mage/sh", "path": "github.com/magefile/mage/sh", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "91U4Tlwnjdmwjd0w/XNw3+fxFKo=", "origin": "github.com/elastic/beats/vendor/github.com/magefile/mage/target", "path": "github.com/magefile/mage/target", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "He+VtZO7BsPDCZhZtJ1IkNp629o=", @@ -1807,50 +1815,50 @@ "checksumSHA1": "qNkx9+OTwZI6aFv7K9zuFCGODUw=", "origin": "github.com/elastic/beats/vendor/github.com/mattn/go-colorable", "path": "github.com/mattn/go-colorable", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "U6lX43KDDlNOn+Z0Yyww+ZzHfFo=", "origin": "github.com/elastic/beats/vendor/github.com/mattn/go-isatty", "path": "github.com/mattn/go-isatty", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "VsImZoqjaqgwK+u/4eIEzQhuRNM=", "origin": "github.com/elastic/beats/vendor/github.com/miekg/dns", "path": "github.com/miekg/dns", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "sWdAYPKyaT4SW8hNQNpRS0sU4lU=", "origin": "github.com/elastic/beats/vendor/github.com/mitchellh/hashstructure", "path": "github.com/mitchellh/hashstructure", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "2AyUkWjutec6p+470tgio8mYOxI=", "origin": "github.com/elastic/beats/vendor/github.com/opencontainers/go-digest", "path": "github.com/opencontainers/go-digest", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "eOMCORUm8KxiGSy0hBuQsMsxauo=", "origin": "github.com/elastic/beats/vendor/github.com/opencontainers/image-spec/specs-go", "path": "github.com/opencontainers/image-spec/specs-go", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "9YujSsJjiLGkQMzwWycsjqR340k=", "origin": "github.com/elastic/beats/vendor/github.com/opencontainers/image-spec/specs-go/v1", "path": "github.com/opencontainers/image-spec/specs-go/v1", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "JVGDxPn66bpe6xEiexs1r+y6jF0=", @@ -1862,15 +1870,15 @@ "checksumSHA1": "WmrPO1ovmQ7t7hs9yZGbr2SAoM4=", "origin": "github.com/elastic/beats/vendor/github.com/pierrec/lz4", "path": "github.com/pierrec/lz4", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "IT4sX58d+e8osXHV5U6YCSdB/uE=", "origin": "github.com/elastic/beats/vendor/github.com/pierrec/xxHash/xxHash32", "path": "github.com/pierrec/xxHash/xxHash32", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "e6T/9bM7ah7mQJVVIaTuCw/63Uo=", @@ -1882,50 +1890,50 @@ "checksumSHA1": "PdQm3s8DoVJ17Vk8n7o5iPa7PK0=", "origin": "github.com/elastic/beats/vendor/github.com/pkg/errors", "path": "github.com/pkg/errors", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "LuFv4/jlrmFNnDb/5SCSEPAM9vU=", "origin": "github.com/elastic/beats/vendor/github.com/pmezard/go-difflib/difflib", "path": "github.com/pmezard/go-difflib/difflib", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Etvt6mgzvD7ARf4Ux03LHfgSlzU=", "origin": "github.com/elastic/beats/vendor/github.com/prometheus/procfs", "path": "github.com/prometheus/procfs", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "lv9rIcjbVEGo8AT1UCUZXhXrfQc=", "origin": "github.com/elastic/beats/vendor/github.com/prometheus/procfs/internal/util", "path": "github.com/prometheus/procfs/internal/util", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "EekY1iRG9JY74mDD0jsbFCWbAFs=", "origin": "github.com/elastic/beats/vendor/github.com/prometheus/procfs/nfs", "path": "github.com/prometheus/procfs/nfs", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "yItvTQLUVqm/ArLEbvEhqG0T5a0=", "origin": "github.com/elastic/beats/vendor/github.com/prometheus/procfs/xfs", "path": "github.com/prometheus/procfs/xfs", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "LmajbO3+qtbE7JA0MQ29PXbmKNM=", "origin": "github.com/elastic/beats/vendor/github.com/rcrowley/go-metrics", "path": "github.com/rcrowley/go-metrics", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "epQZICCcThx99PQo7m/HuWN5kpQ=", @@ -2000,43 +2008,43 @@ "checksumSHA1": "e7mAb9jMke2ASQGZepFgOmfBFzM=", "origin": "github.com/elastic/beats/vendor/github.com/spf13/cobra", "path": "github.com/spf13/cobra", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "STxYqRb4gnlSr3mRpT+Igfdz/kM=", "origin": "github.com/elastic/beats/vendor/github.com/spf13/pflag", "path": "github.com/spf13/pflag", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "c6pbpF7eowwO59phRTpF8cQ80Z0=", "origin": "github.com/elastic/beats/vendor/github.com/stretchr/testify/assert", "path": "github.com/stretchr/testify/assert", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "wnEANt4k5X/KGwoFyfSSnpxULm4=", "origin": "github.com/elastic/beats/vendor/github.com/stretchr/testify/require", "path": "github.com/stretchr/testify/require", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "CpcG17Q/0k1g2uy8AL26Uu7TouU=", "origin": "github.com/elastic/beats/vendor/github.com/theckman/go-flock", "path": "github.com/theckman/go-flock", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "H7tCgNt2ajKK4FBJIDNlevu9MAc=", "origin": "github.com/elastic/beats/vendor/github.com/urso/go-bin", "path": "github.com/urso/go-bin", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "8Kj0VH496b0exuyv4wAF4CXa7Y4=", @@ -2196,169 +2204,169 @@ "checksumSHA1": "HedK9m8E8iyib4bIBtIX7xprOgo=", "origin": "github.com/elastic/beats/vendor/go.uber.org/atomic", "path": "go.uber.org/atomic", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "JDGx7hehaQunZySwPs7yvdUs2m8=", "origin": "github.com/elastic/beats/vendor/go.uber.org/multierr", "path": "go.uber.org/multierr", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "5BYbiKEkYykvfjSaNYDuQpBqglo=", "origin": "github.com/elastic/beats/vendor/go.uber.org/zap", "path": "go.uber.org/zap", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "HYo/9nwrY08NQA+2ItPOAH8IFW8=", "origin": "github.com/elastic/beats/vendor/go.uber.org/zap/buffer", "path": "go.uber.org/zap/buffer", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "MuxOAtZEsJitlWBzhmpm2vGiHok=", "origin": "github.com/elastic/beats/vendor/go.uber.org/zap/internal/bufferpool", "path": "go.uber.org/zap/internal/bufferpool", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "uC0L9eCSAYcCWNC8udJk/t1vvIU=", "origin": "github.com/elastic/beats/vendor/go.uber.org/zap/internal/color", "path": "go.uber.org/zap/internal/color", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "b80CJExrVpXu3SA1iCQ6uLqTn2c=", "origin": "github.com/elastic/beats/vendor/go.uber.org/zap/internal/exit", "path": "go.uber.org/zap/internal/exit", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "mRD6lujPvXPkbC3+byNwO/bNVu8=", "origin": "github.com/elastic/beats/vendor/go.uber.org/zap/zapcore", "path": "go.uber.org/zap/zapcore", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "gyBmIfDZslmQGKnqisJ/p7oHbQc=", "origin": "github.com/elastic/beats/vendor/go.uber.org/zap/zaptest/observer", "path": "go.uber.org/zap/zaptest/observer", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "2LpxYGSf068307b7bhAuVjvzLLc=", "origin": "github.com/elastic/beats/vendor/golang.org/x/crypto/ed25519", "path": "golang.org/x/crypto/ed25519", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "0JTAFXPkankmWcZGQJGScLDiaN8=", "origin": "github.com/elastic/beats/vendor/golang.org/x/crypto/ed25519/internal/edwards25519", "path": "golang.org/x/crypto/ed25519/internal/edwards25519", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "1MGpGDQqnUoRpv7VEcQrXOBydXE=", "origin": "github.com/elastic/beats/vendor/golang.org/x/crypto/pbkdf2", "path": "golang.org/x/crypto/pbkdf2", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "6U7dCaxxIMjf5V02iWgyAwppczw=", "origin": "github.com/elastic/beats/vendor/golang.org/x/crypto/ssh/terminal", "path": "golang.org/x/crypto/ssh/terminal", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "uX2McdP4VcQ6zkAF0Q4oyd0rFtU=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/bpf", "path": "golang.org/x/net/bpf", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "dr5+PfIRzXeN+l1VG+s0lea9qz8=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/context", "path": "golang.org/x/net/context", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "WHc3uByvGaMcnSoI21fhzYgbOgg=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/context/ctxhttp", "path": "golang.org/x/net/context/ctxhttp", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "TWcqN2+KUWtdqnu18rruwn14UEQ=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/http2", "path": "golang.org/x/net/http2", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ezWhc7n/FtqkLDQKeU2JbW+80tE=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/http2/hpack", "path": "golang.org/x/net/http2/hpack", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "RcrB7tgYS/GMW4QrwVdMOTNqIU8=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/idna", "path": "golang.org/x/net/idna", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "5JWn/wMC+EWNDKI/AYE4JifQF54=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/internal/iana", "path": "golang.org/x/net/internal/iana", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "YsXlbexuTtUXHyhSv927ILOkf6A=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/internal/socket", "path": "golang.org/x/net/internal/socket", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "zPTKyZ1C55w1fk1W+/qGE15jaek=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/ipv4", "path": "golang.org/x/net/ipv4", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "3L3n7qKMO9X8E1ibA5mExKvwbmI=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/ipv6", "path": "golang.org/x/net/ipv6", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "3xyuaSNmClqG4YWC7g0isQIbUTc=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/lex/httplex", "path": "golang.org/x/net/lex/httplex", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "whCSspa9pYarl527EuhPz91cbUE=", @@ -2370,8 +2378,8 @@ "checksumSHA1": "QEm/dePZ0lOnyOs+m22KjXfJ/IU=", "origin": "github.com/elastic/beats/vendor/golang.org/x/net/proxy", "path": "golang.org/x/net/proxy", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "S0DP7Pn7sZUmXc55IzZnNvERu6s=", @@ -2383,78 +2391,78 @@ "checksumSHA1": "nc3RG2Qgzn2aup/3/4RusWr+X0g=", "origin": "github.com/elastic/beats/vendor/golang.org/x/sys/unix", "path": "golang.org/x/sys/unix", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Hi7BmkvZh4plNNLGDHfPnCKy3i8=", "origin": "github.com/elastic/beats/vendor/golang.org/x/sys/windows", "path": "golang.org/x/sys/windows", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "P9OIhD26uWlIST/me4TYnvseCoY=", "origin": "github.com/elastic/beats/vendor/golang.org/x/sys/windows/registry", "path": "golang.org/x/sys/windows/registry", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "Fes9OIPy6lS/ghzodqAbMlZZTTQ=", "origin": "github.com/elastic/beats/vendor/golang.org/x/sys/windows/svc", "path": "golang.org/x/sys/windows/svc", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "e9KJPWrdqg5PMkbE2w60Io8rY4M=", "origin": "github.com/elastic/beats/vendor/golang.org/x/sys/windows/svc/debug", "path": "golang.org/x/sys/windows/svc/debug", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "uVlUSSKplihZG7N+QJ6fzDZ4Kh8=", "origin": "github.com/elastic/beats/vendor/golang.org/x/sys/windows/svc/eventlog", "path": "golang.org/x/sys/windows/svc/eventlog", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "CbpjEkkOeh0fdM/V8xKDdI0AA88=", "origin": "github.com/elastic/beats/vendor/golang.org/x/text/secure/bidirule", "path": "golang.org/x/text/secure/bidirule", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ziMb9+ANGRJSSIuxYdRbA+cDRBQ=", "origin": "github.com/elastic/beats/vendor/golang.org/x/text/transform", "path": "golang.org/x/text/transform", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "w8kDfZ1Ug+qAcVU0v8obbu3aDOY=", "origin": "github.com/elastic/beats/vendor/golang.org/x/text/unicode/bidi", "path": "golang.org/x/text/unicode/bidi", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "BCNYmf4Ek93G4lk5x3ucNi/lTwA=", "origin": "github.com/elastic/beats/vendor/golang.org/x/text/unicode/norm", "path": "golang.org/x/text/unicode/norm", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "vGfePfr0+weQUeTM/71mu+LCFuE=", "origin": "github.com/elastic/beats/vendor/golang.org/x/time/rate", "path": "golang.org/x/time/rate", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "5QK10eoScnyEh8dD3PfZf8gMXn8=", @@ -2498,15 +2506,15 @@ "checksumSHA1": "fALlQNY1fM99NesfLJ50KguWsio=", "origin": "github.com/elastic/beats/vendor/gopkg.in/yaml.v2", "path": "gopkg.in/yaml.v2", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" }, { "checksumSHA1": "ZDOewomjpADMDyjKRW5rP15519M=", "origin": "github.com/elastic/beats/vendor/howett.net/plist", "path": "howett.net/plist", - "revision": "4920cd69346f6320f9bdebcff602ba874666f492", - "revisionTime": "2019-03-19T23:58:12Z" + "revision": "aa6953a32b7ca4cf3fc14363fbedb1d1ff8dd24d", + "revisionTime": "2019-04-05T16:11:28Z" } ], "rootPath": "github.com/elastic/apm-server"