mac beats开发环境搭建

夏可十二 · · 1257 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

go语言环境搭建

sdk

方式一:brew install go
方式二:官网下载golang
推荐这种方式,可以选择尽量新的版本,默认安装路径为/usr/local/go,然后设置path
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
GOPATH默认为~/go,也可以设置export GOPATH=你想设置的目录,多个用冒号隔开,windows用分号
ps:记得source

image

ide

方式一:golang
方式二:idea
但是笔者认为都是同一家族的,只想安装插件,所以选择idea。
如果已经安装,请查看当前idea的版本,注意要求idea的版本不低于2017.3,因为低版本没有对go的插件支持
如果已经安装了老的版本,可以再到官网下载Download IntelliJ IDEA: The Java IDE for Professional Developers by JetBrains安装个新的,共用同一份设置,两者并存,笔者就是这么做的,哈哈。

image

安装go插件

方式一:通过idea找到插件之后,点击install按钮,安装完然后重启

image

方式二:通过官网下载Go - Plugins | JetBrains插件包
记得要找支持自己idea版本的插件下载到本地,笔者根据自己idea的版本选择的182最新的版本
image

然后idea安装下载的插件然后重启
image

python2

brew install python@2

virtualenv

pip install virtualenv

beats

git clone 源码

mkdir -p ${GOPATH}/src/github.com/elastic
cd ${GOPATH}/src/github.com/elastic
git clone https://github.com/elastic/beats.git

make

cd 到某个模块
make collect
make update
make
然后会在本目录生成一个可执行文件


image

开发--processor

第一步:新增目录与代码文件

image

第二步:编写代码

package add_processor

import (
"fmt"
"strings"

"github.com/elastic/beats/libbeat/beat"
"github.com/elastic/beats/libbeat/common"
"github.com/elastic/beats/libbeat/processors"
)

type filter struct {
    Fields []string
}

func init() {
    processors.RegisterPlugin("add_processor", newProcessor)
}

func newProcessor(c *common.Config) (processors.Processor, error) {
    config := struct {
        Fields []string `config:"fields"`

    }{}
    err := c.Unpack(&config)
    if err != nil {
        return nil, fmt.Errorf("fail to unpack the add_processor configuration: %s", err)
    }

    f := &filter{Fields: config.Fields}
    return f, nil
}

func (f *filter) Run(event *beat.Event) (*beat.Event, error) {
    //code
    return event, nil
}

func (f *filter) String() string {
    var fields []string
    for i := 0; i < len(f.Fields); i++ {
        fields = append(fields, f.Fields[i])
    }
    return "bloom_filter=" + strings.Join(fields, ", ")
}

第三步:增加配置项
文件位置:filebeat/beater/filebeat.go
import中增加刚刚新建的processor目录
_ "github.com/elastic/beats/filebeat/processor/add_processor"


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:夏可十二

查看原文:mac beats开发环境搭建

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1257 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传