diff --git a/x-pack/agent/magefile.go b/x-pack/agent/magefile.go index d9b4b6e6a688..aa92950d6d82 100644 --- a/x-pack/agent/magefile.go +++ b/x-pack/agent/magefile.go @@ -335,6 +335,7 @@ func Config() { // BuildSpec make sure that all the suppported program spec are built into the binary. func BuildSpec() error { + // go run x-pack/agent/dev-tools/cmd/buildspec/buildspec.go --in x-pack/agent/spec/*.yml --out x-pack/agent/pkg/agent/program/supported.go goF := filepath.Join("dev-tools", "cmd", "buildspec", "buildspec.go") in := filepath.Join("spec", "*.yml") out := filepath.Join("pkg", "agent", "program", "supported.go") diff --git a/x-pack/agent/pkg/agent/program/supported.go b/x-pack/agent/pkg/agent/program/supported.go index 3d0665e464e5..b07271fbb48d 100644 --- a/x-pack/agent/pkg/agent/program/supported.go +++ b/x-pack/agent/pkg/agent/program/supported.go @@ -17,7 +17,7 @@ func init() { // spec/heartbeat.yml // spec/journalbeat.yml // spec/metricbeat.yml - unpacked := packer.MustUnpack("eJzMVl1zozoSfd+fkeetHRBj77BV82DIIMAOXuMYCb0hyQFs8bE2/oCt/e9bMv6AxLk3UzdT9z6kKm6k5nSfc7r578O2XLIv0Y6nFV1G1T/qTDz864FmVkWei3iGg3WE/ZQgSzEzryKPRRx2Y7mrUhg007ioHEhKavuCCR2E6KgS7L1wIJTI0muCuFjao6GZjmLHNDYEr4eO7Q8YXIwdcxQ7tiumqbFsc8/2k3R7jnuCwmDFoV5PU6OkuaFy+2k8mRtViK/5DiH2i+7zc84Ltlj+nswNhWXWjoFjwmHwDrb2j0FLiR6LmNviQGbFNf4a59j8uhn3nvOSw3jomLOjmSpxCPTD8rlo8UBSU6AMHSh2zA4Udmjvcfht6EBLJVAoYRYkfCR7qSbs8XzPNpJTzu4Zc/B7tdYEDRKKFr26SO7u6fO9uvz9NDUqCnyVwsX47X0jY5leTVMj4cgvOXRFiGe7CA0OHPvN+YxCmyKmSF9zdBTs0NHEqnjDJ2vOMVPpa6rFWzlQV7ltqHx0rWlDsGjkXTIrtQgGu2lqOCH2XA6DitWxWKpVD98Vi6rq4/koc9vz0xCpgmlGEoJF4YLze0y2dUwuKLQaDsWKgSBhmVe49UHizFkmMT7lE3OUR8DKIvDj9D+Fes40P2Egzsez4vvD31tPvaRiecdSfia2BJ3gjUOgrqepkUXoKFrqy/oEtyk+QeKLj0laSs02bhRd4wEgaKBMACkpXAwdeNyTQ+eelBMmguazPdP8dYS+Dh3bUwgUu+57HdMQPAt23NSVUBtJ26/Y6H4ejvzDNDVUYo9eYTnuSa2vKfA2BDtDB/r7EFSCxf08koqJ5goCRYM1b0s1vqWADaVtZewVLvlszzTRyHvT1GiW2JMx2XvJiUKw+8Iza8vRrccMBFuCPIVqzhsrRyAYTFNDWWJDnHk7j8Kn4U3Wtz5O5kbDoV/SG3+d2pWYQ+9wu9evubWoX7JOrg7+FdWMwQXzxfb37Eo6erzV7Vx01xCpTc3fs7xbg9RE8Bl2vWn/OtI8/jJfx24axnNoNc/SN9g7hMgTY5PvOfYPHM9O1iPomDDNL0PNEyF2V1Fr4bYvNdtKbC6oEpJViVsfYhcc90TzlBBLW6/HF6smy2hzb/3NYZCwvL/+om7sk9cfRfouwv6epd9248Nv6u2dFdHXI8uDbU97tl+HaNBQaCkk0LUI+wWWfgHB12suszdvOlo+z5FsMXSsQUXBoJTcTur4y+LxeDr37/S9deif8/zMSkwkp52V+LFV0uPnj2mzIMiqX686jJXSMcPM+ZEkTJErMmgYtFZkHudUCxRZR6u1YBtiT4mQ18g8IYhPmr2ukRMWvgkR2YTzk263FPCGQ6uJTFaa8ffrKlkVu00eiXsKzXSVZYOEwt5G+Q/Vgppm1vbOVvm1k63Wr+/+ObbLPcfuLkTHM3PKaTJxGNRv8bndjfeq1mv8MiluygDBgMlJli3GHCSCrorThJljX1D8VLi4olG/n5/Desv0dSp9lPVsWW1Sdof0ZxQoLBOrM7krimZDB6qC224ZglYIN+vfGok1klA7EEx9x/qwEstXX4cXuxPs1xF6+st/mdNzb37dWOr3+eMrs3/vIsqLeG7nKrHEJ5ELM+cFkZ9VJ9EJhSC1GZvBPxHo5fpzRPq/v/0/AAD//xsUyPA=") + unpacked := packer.MustUnpack("eJzMVlGTokYQfs/P2OdUDobTOlN1D8IeA+hixHUY5o2ZcQEdhCiikMp/T42goutebus2VXnYqnVgmu7+vq+//uthmy/Yp3DHk4IuwuK3KhUPvz/Q1CzIcxZNMVqF2EuIbypG6hbkMYuC7tnaUSlE9STKChuSnFqeYGIAAv+gEuy+cCCU0BxUxOdiYQ37RjKMbEPfELzq25bXY3A+so1hZFuOmCT6ook9LcfJtj13BYVoyeGgmiR6Tte6yq2n0XimFwE+x9sH2Mu6z9uYp9wi+Xs80xWWmjsGDjGH6I3cmj8GTSV8zCJuiT2ZZufz2zxHxufN6Oo5zzmM+rYxPRiJEgVgsF88Z00+kFQUKH0bih2zkML2zT0Ov/RtaKoECiVIUcyHspdqzB7be5YeH2N23zF6/1ZrRfxeTP35VV1k7ZT0+V5dXjlJ9IICT6VwPnp9X09ZOigmiR5z38s5dESAp7vQ7+059ur2HYXWWUT9wYr7B8H2HU4ss1d4sro9M5RrTjX5FjYcqNzSVT4817QhWNTyLpnmWgjRbpLodoBdh0NUsCoSC7W4yu+ci6oORrNh6jTvTwJfFUzT4wDMMwe03zHY1ja4oNCsORRLBlDMUjdzqr3Mc81SmePTemwM1yEw0xB8O/5P4WDNNC9mIFqPptnXh18bTb0kYnFHUl4qtsQ/pjcKgLqaJHoa+gfRQJ9Xx3Tr7AMoPv8xSkuqWfoFovM5AsTvKWNAcgrnfRseSrLv3JN0wkTQ9bRkmrcK/c9923IVAsWu+13b0AVP0Y4bAyXQhlL2Sza8H4f73n6S6Cqxhje5HEpSDVYUuBuC7b4NvTIAhWDRdRwJxVhzBIGixpq7pRrfUsD6Urby7CYv+axkmqjlvUmi1wvsyjPZe4mJQrDzwlNzy/1LjxlAW+K7CtXsV1IOAepNEl1ZYF20uLWj8Kl/ofWlj+OZXnPo5fSCX6d2JeLQ3V/uXdfcSNTLWSdWJ/8l1fTeKeeT7O/JlXT4eKnbPvGuJpKbmleydbcGyQn0EXK9cP880lz+MltFThJEM2jWz1I32N0HvitGBi859vYcT4/SI/4hZpqXB5orAuwsw0bCTV8qtpW5OaCISVrETrWPHHAoieYqAZayXo1OUo0X4eae/c0gitn62v7C7tkH2x/1B7sQeyVLvuxG++/y7Q2LuOYjW6PtFfcsrwr8Xk2hqRA00ELsZVjqBaDP51jG1bzpcLmdI+m8b5u9goJeLrEdV9Gn+ePh+N4fyVt26LVx3mOJscS0Y4k/ZiVX+PwcNzPim9Wt1WGs5LYRpPa3OGaKtEhUM2guySxaUw0pso6Ga2gbYFcJfbeWcQIQHTl7tpFjLnwT+GQTzI683VLAaw7NOjRYbkRfz1ayzHabdSjuMTQdqCztxRReOcqfVEMVTc3tHVf5bydbNTh/+31o5yXHzi7wDy1yynEycYiq1/k5Xce7qfV8fpoUF2YA1GNykqXzEQexoMvsOGFm2BMUP2UOLmh43c+PQb1B+jyVfhT1dFFsEnYH9GcfKSwVyxbcJfWnfRuqgltOHoCGCBfpXxqJNRJTCwmmviF9WIjFzXZ4kjvBXhX6T//7zZy2vXnfWDqNR0e0Pe6OwtPm+2oUNsRVS2KhLZnKEeWWzFrdbsw3tTebdtNP90x2lqKd3EpvLZt2sX619Xe3dlS/QzQ33/+pMXkVa5y2/cA/Z+NH625XuUZY37Hxv3/5JwAA//82Hfvb") for f, v := range unpacked { s, err := NewSpecFromBytes(v) diff --git a/x-pack/agent/pkg/agent/program/testdata/single_config-metricbeat.yml b/x-pack/agent/pkg/agent/program/testdata/single_config-metricbeat.yml index 4ff808cbb134..8d091fcdd60d 100644 --- a/x-pack/agent/pkg/agent/program/testdata/single_config-metricbeat.yml +++ b/x-pack/agent/pkg/agent/program/testdata/single_config-metricbeat.yml @@ -1,7 +1,9 @@ metricbeat: - inputs: - - type: docker - - type: apache + modules: + - module: docker + setting: one + - module: apache + setting: two output: elasticsearch: hosts: [127.0.0.1:9200, 127.0.0.1:9300] diff --git a/x-pack/agent/pkg/agent/program/testdata/single_config.yml b/x-pack/agent/pkg/agent/program/testdata/single_config.yml index 0a8227c7273e..c89ce0b7a202 100644 --- a/x-pack/agent/pkg/agent/program/testdata/single_config.yml +++ b/x-pack/agent/pkg/agent/program/testdata/single_config.yml @@ -1,6 +1,8 @@ inputs: - type: metric/docker + setting: one - type: metric/apache + setting: two - type: event/file paths: - /var/log/hello1.log diff --git a/x-pack/agent/spec/metricbeat.yml b/x-pack/agent/spec/metricbeat.yml index 0a23a0134c50..a3a38a85d510 100644 --- a/x-pack/agent/spec/metricbeat.yml +++ b/x-pack/agent/spec/metricbeat.yml @@ -12,13 +12,19 @@ rules: path: type re: ^metric/(?P.+) with: $type + - rename: + from: type + to: module - copy: from: inputs to: metricbeat +- rename: + from: metricbeat.inputs + to: modules - filter: selectors: - metricbeat - output - keystore -when: HasItems(%{[metricbeat.inputs]}) && HasNamespace('output', 'elasticsearch', +when: HasItems(%{[metricbeat.modules]}) && HasNamespace('output', 'elasticsearch', 'redis', 'kafka', 'logstash')