diff options
author | fhajny <fhajny@pkgsrc.org> | 2017-01-05 16:43:09 +0000 |
---|---|---|
committer | fhajny <fhajny@pkgsrc.org> | 2017-01-05 16:43:09 +0000 |
commit | 091b4e77682267b7858049a1fe792a62d95db2c0 (patch) | |
tree | 1b1b705e585b34b0a7e921dcb52af5d421b124bf /sysutils/beats | |
parent | 2e22ad22f930842438144dbf927255caffd42ee2 (diff) | |
download | pkgsrc-091b4e77682267b7858049a1fe792a62d95db2c0.tar.gz |
Import beats 5.1.1 as sysutils/beats (based on wip/beats).
The Beats are lightweight processes, written in Go, that you install
on your servers to capture all sorts of operational data like logs,
operating system metrics or network packet data, and to send it to
Elasticsearch, either directly or via Logstash, so it can be
visualized with Kibana.
Diffstat (limited to 'sysutils/beats')
-rw-r--r-- | sysutils/beats/DESCR | 5 | ||||
-rw-r--r-- | sysutils/beats/Makefile | 71 | ||||
-rw-r--r-- | sysutils/beats/PLIST | 21 | ||||
-rw-r--r-- | sysutils/beats/distinfo | 7 | ||||
-rw-r--r-- | sysutils/beats/files/smf/manifest.xml | 83 | ||||
-rw-r--r-- | sysutils/beats/patches/patch-vendor_github.com_tsg_gopacket_pcap_pcap.go | 22 |
6 files changed, 209 insertions, 0 deletions
diff --git a/sysutils/beats/DESCR b/sysutils/beats/DESCR new file mode 100644 index 00000000000..3add6f12559 --- /dev/null +++ b/sysutils/beats/DESCR @@ -0,0 +1,5 @@ +The Beats are lightweight processes, written in Go, that you install +on your servers to capture all sorts of operational data like logs, +operating system metrics or network packet data, and to send it to +Elasticsearch, either directly or via Logstash, so it can be +visualized with Kibana. diff --git a/sysutils/beats/Makefile b/sysutils/beats/Makefile new file mode 100644 index 00000000000..3039b65b47c --- /dev/null +++ b/sysutils/beats/Makefile @@ -0,0 +1,71 @@ +# $NetBSD: Makefile,v 1.1 2017/01/05 16:43:09 fhajny Exp $ +# + +DISTNAME= beats-5.1.1 +CATEGORIES= sysutils +MASTER_SITES= ${MASTER_SITE_GITHUB:=elastic/} +GITHUB_PROJECT= beats +GITHUB_TAG= v${PKGVERSION_NOREV} + +MAINTAINER= filip@joyent.com +HOMEPAGE= https://www.elastic.co/products/beats +COMMENT= Data Shippers for Elasticsearch +LICENSE= apache-2.0 + +.include "../../lang/go/version.mk" +BUILD_DEPENDS+= go-${GO_VERSION}*:../../lang/go + +EXTRACT_USING= bsdtar +USE_TOOLS+= gmake + +WRKSRC= ${WRKDIR}/src/github.com/elastic/beats + +# Components to build/install +BEATS= filebeat heartbeat metricbeat packetbeat + +.for beat in ${BEATS} +CONF_FILES+= share/examples/beats/${beat}.yml \ + ${PKG_SYSCONFDIR}/${beat}.yml +CONF_FILES+= share/examples/beats/${beat}.template.json \ + ${PKG_SYSCONFDIR}/${beat}.template.json +CONF_FILES+= share/examples/beats/${beat}.template-es2x.json \ + ${PKG_SYSCONFDIR}/${beat}.template-es2x.json +.endfor + +BEATS_DIR?= ${VARBASE}/db/beats +BEATS_LOGDIR?= ${VARBASE}/log/beats + +FILES_SUBST+= BEATS_DIR=${BEATS_DIR} +FILES_SUBST+= BEATS_LOGDIR=${BEATS_LOGDIR} + +PKG_SYSCONFSUBDIR= beats + +SMF_INSTANCES+= ${BEATS} + +OWN_DIRS+= ${BEATS_DIR} ${BEATS_LOGDIR} + +MAKE_ENV+= GOPATH=${WRKDIR}:${PREFIX}/gopkg +BUILD_DIRS= ${BEATS} +BUILD_TARGET= # + +INSTALLATION_DIRS+= bin share/examples/beats + +post-extract: + ${MKDIR} ${WRKSRC} + ${MV} ${WRKDIR}/${DISTNAME}/* ${WRKSRC} + +do-install: +.for beat in ${BEATS} + ${INSTALL_PROGRAM} ${WRKSRC}/${beat}/${beat} ${DESTDIR}${PREFIX}/bin + ${INSTALL_DATA} ${WRKSRC}/${beat}/${beat}.full.yml \ + ${DESTDIR}${PREFIX}/share/examples/beats + ${INSTALL_DATA} ${WRKSRC}/${beat}/${beat}.template-es2x.json \ + ${DESTDIR}${PREFIX}/share/examples/beats + ${INSTALL_DATA} ${WRKSRC}/${beat}/${beat}.template.json \ + ${DESTDIR}${PREFIX}/share/examples/beats + ${INSTALL_DATA} ${WRKSRC}/${beat}/${beat}.yml \ + ${DESTDIR}${PREFIX}/share/examples/beats +.endfor + +.include "../../net/libpcap/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/sysutils/beats/PLIST b/sysutils/beats/PLIST new file mode 100644 index 00000000000..31bd2b58c17 --- /dev/null +++ b/sysutils/beats/PLIST @@ -0,0 +1,21 @@ +@comment $NetBSD: PLIST,v 1.1 2017/01/05 16:43:09 fhajny Exp $ +bin/filebeat +bin/heartbeat +bin/metricbeat +bin/packetbeat +share/examples/beats/filebeat.full.yml +share/examples/beats/filebeat.template-es2x.json +share/examples/beats/filebeat.template.json +share/examples/beats/filebeat.yml +share/examples/beats/heartbeat.full.yml +share/examples/beats/heartbeat.template-es2x.json +share/examples/beats/heartbeat.template.json +share/examples/beats/heartbeat.yml +share/examples/beats/metricbeat.full.yml +share/examples/beats/metricbeat.template-es2x.json +share/examples/beats/metricbeat.template.json +share/examples/beats/metricbeat.yml +share/examples/beats/packetbeat.full.yml +share/examples/beats/packetbeat.template-es2x.json +share/examples/beats/packetbeat.template.json +share/examples/beats/packetbeat.yml diff --git a/sysutils/beats/distinfo b/sysutils/beats/distinfo new file mode 100644 index 00000000000..5a7273da5b8 --- /dev/null +++ b/sysutils/beats/distinfo @@ -0,0 +1,7 @@ +$NetBSD: distinfo,v 1.1 2017/01/05 16:43:09 fhajny Exp $ + +SHA1 (beats-5.1.1.tar.gz) = 6847fc4b96adcf38b3b46a2c31a6109797bfd07b +RMD160 (beats-5.1.1.tar.gz) = 9cc18d886df86e4cead9c9ab546a127a8f643893 +SHA512 (beats-5.1.1.tar.gz) = 0eb646faa7ff8fb310f97507c105b1dac5ee1ed114c858f92905ae8a1e7a3a2a2a095e52a5155194df9b699e93dd93f00e9da9b1d71b22fbcc539feaa705b984 +Size (beats-5.1.1.tar.gz) = 16500866 bytes +SHA1 (patch-vendor_github.com_tsg_gopacket_pcap_pcap.go) = 2ef13f84cbf2e1da428e7b08625ffa6111ebcdf5 diff --git a/sysutils/beats/files/smf/manifest.xml b/sysutils/beats/files/smf/manifest.xml new file mode 100644 index 00000000000..f811747a7ff --- /dev/null +++ b/sysutils/beats/files/smf/manifest.xml @@ -0,0 +1,83 @@ +<?xml version='1.0'?> +<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'> +<service_bundle type='manifest' name='export'> + <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'> + <dependency name='fs-local' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/filesystem/local'/> + </dependency> + <dependency name='network-service' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/network/service'/> + </dependency> + <dependency name='name-services' grouping='require_all' restart_on='refresh' type='service'> + <service_fmri value='svc:/milestone/name-services'/> + </dependency> + <dependency name='system-log' grouping='optional_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/system-log'/> + </dependency> + <method_context working_directory='@BEATS_DIR@' /> + <property_group name='startd' type='framework'> + <propval name='ignore_error' type='astring' value='core,signal'/> + <propval name='duration' type='astring' value='child' /> + </property_group> + <instance name='filebeat' enabled='false'> + <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'> + <service_fmri value='file://localhost@PKG_SYSCONFDIR@/filebeat.yml'/> + </dependency> + <exec_method name='start' type='method' exec='@PREFIX@/bin/filebeat -path.config @PKG_SYSCONFDIR@ -path.data @BEATS_DIR@ -path.logs @BEATS_LOGDIR@' timeout_seconds='60'/> + <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60'/> + <template> + <common_name> + <loctext xml:lang='C'>Beats: filebeat data shipper</loctext> + </common_name> + <documentation> + <doc_link name='elastic.co' uri='https://www.elastic.co/guide/en/beats/filebeat/current/index.html' /> + </documentation> + </template> + </instance> + <instance name='heartbeat' enabled='false'> + <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'> + <service_fmri value='file://localhost@PKG_SYSCONFDIR@/heartbeat.yml'/> + </dependency> + <exec_method name='start' type='method' exec='@PREFIX@/bin/heartbeat -path.config @PKG_SYSCONFDIR@ -path.data @BEATS_DIR@ -path.logs @BEATS_LOGDIR@' timeout_seconds='60'/> + <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60'/> + <template> + <common_name> + <loctext xml:lang='C'>Beats: heartbeat data shipper</loctext> + </common_name> + <documentation> + <doc_link name='elastic.co' uri='https://www.elastic.co/guide/en/beats/heartbeat/current/index.html' /> + </documentation> + </template> + </instance> + <instance name='metricbeat' enabled='false'> + <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'> + <service_fmri value='file://localhost@PKG_SYSCONFDIR@/metricbeat.yml'/> + </dependency> + <exec_method name='start' type='method' exec='@PREFIX@/bin/metricbeat -path.config @PKG_SYSCONFDIR@ -path.data @BEATS_DIR@ -path.logs @BEATS_LOGDIR@' timeout_seconds='60'/> + <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60'/> + <template> + <common_name> + <loctext xml:lang='C'>Beats: metricbeat data shipper</loctext> + </common_name> + <documentation> + <doc_link name='elastic.co' uri='https://www.elastic.co/guide/en/beats/metricbeat/current/index.html' /> + </documentation> + </template> + </instance> + <instance name='packetbeat' enabled='false'> + <dependency name='config-file' grouping='require_all' restart_on='refresh' type='path'> + <service_fmri value='file://localhost@PKG_SYSCONFDIR@/packetbeat.yml'/> + </dependency> + <exec_method name='start' type='method' exec='@PREFIX@/bin/packetbeat -path.config @PKG_SYSCONFDIR@ -path.data @BEATS_DIR@ -path.logs @BEATS_LOGDIR@' timeout_seconds='60'/> + <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60'/> + <template> + <common_name> + <loctext xml:lang='C'>Beats: packetbeat data shipper</loctext> + </common_name> + <documentation> + <doc_link name='elastic.co' uri='https://www.elastic.co/guide/en/beats/packetbeat/current/index.html' /> + </documentation> + </template> + </instance> + </service> +</service_bundle> diff --git a/sysutils/beats/patches/patch-vendor_github.com_tsg_gopacket_pcap_pcap.go b/sysutils/beats/patches/patch-vendor_github.com_tsg_gopacket_pcap_pcap.go new file mode 100644 index 00000000000..7c82807dea5 --- /dev/null +++ b/sysutils/beats/patches/patch-vendor_github.com_tsg_gopacket_pcap_pcap.go @@ -0,0 +1,22 @@ +$NetBSD: patch-vendor_github.com_tsg_gopacket_pcap_pcap.go,v 1.1 2017/01/05 16:43:09 fhajny Exp $ + +Just require pcap, fixes NetBSD. + +--- vendor/github.com/tsg/gopacket/pcap/pcap.go.orig 2016-12-06 07:41:08.000000000 +0000 ++++ vendor/github.com/tsg/gopacket/pcap/pcap.go +@@ -8,14 +8,7 @@ + package pcap + + /* +-#cgo linux LDFLAGS: -lpcap +-#cgo freebsd LDFLAGS: -lpcap +-#cgo openbsd LDFLAGS: -lpcap +-#cgo darwin LDFLAGS: -lpcap +-#cgo solaris LDFLAGS: -lpcap +-#cgo windows CFLAGS: -I C:/WpdPack/Include +-#cgo windows,386 LDFLAGS: -L C:/WpdPack/Lib -lwpcap +-#cgo windows,amd64 LDFLAGS: -L C:/WpdPack/Lib/x64 -lwpcap ++#cgo LDFLAGS: -lpcap + #include <stdlib.h> + #include <pcap.h> + |