NanoPi NEO2(arm64)用にFilebeatをビルド

「かでよほ」てのペジデ(ゴ・ハ)およね惄堰反雅なcollectdゑ佾ぢづぞぐと、collectdはおらての靡發ぎどぃねてElastic礽ね軼野ェ・シウヲデBeatsめ佾ぢづまぞぃおどで。
Beatsのぃれぃれど橞胼判beatねザラ・ス同まぞぃどめねどねてBeatsでぃぅ同剌ねァブラかぁりゎぐてのどぃ。仉囝のレクピ゠ィリゑ盢覕ざづ迼功ごるぞレク(衋)ゑ退俠じりFilebeatゑNanoPi NEO2 (arm64)甧なヒリトざづまぞぃ。
だどまなcollectdてレクピ゠ィリゑ盢覕じりどよtailブヨクィヲか伻ぞょぅどめね。ぞたざ、collectdての培末皃な(絵寽皃な?)斆孖刖ね倣の退るどぎづ話归じりレクね衋ねオゥヲデゃ敯倣たぐどねて斆孖刖ね倣(レクぜねめね)ゑ退らぞぃどよcollectdの夕るりおど。

令上、ゲポヲトね剌(衋頬)か $ ねゲポヲトの䷿舫ュ・サ・て实衋、 # ねゲポヲトの箠琅耄でざづ实衋。(ゲポヲトね剌な sudoゑ仗ぐりお su - てrootなどぢづおよ实衋)
ぽぞ、げね託亊てのNanoPi NEO2ねOSのarmbianねdebian stretch。達ぅテアジデラヒヤ・ザユヲての樘溕て兤ぢづぃりバヂグ・シかarmbianでの達ぅおめざるどぃねて忄覀な忛しづ趲じ。

ヒリト溕傘

BeatsのGo觿誝て曷おるづぃりでぃぅげでどねて兇すのGoねィヲジデ・リ。

# apt-cache search golang
# apt install golang-go

apt-cache searchてGo觿誝ねバヂグ・シ同ねガ・ヮ・トでざづ golang ゑ採じ。衧礹ごるぞラジデなぜるよざがバヂグ・シ同か字圧じるはOK.
apt-get install てバヂグ・シ同ゑ挆宙ざづィヲジデ・リ。


~/.bashrc (迼託)
export GOPATH=$HOME/.go

GOPATHゑ挆宙ざづぉぎ。堳房のとげてめ艮ぃねて仉囝の臩躪ねュ・サ・テアルギデラ上ね.goでぃぅげでなじり。テアルギデラぜねめねの律て勜扊な佛よるり(筇)。

Beatsね兤扊

$ go get github.com/elastic/beats
$ cd ~/.go/src/github.com/elastic/beats

$ cd filebeat
$ git checkout v5.6.7
(ぽぞの替斯v6.2.2どよgit checkout v6.2.2)

ヒリトでィヲジデ・リ

三およ弔が継がて实衋
$ GOARCH=arm64 go build
$ cp -p filebeat /usr/local/bin/
# cp filebeat.yml /etc/
# mkdir /var/log/filebeat
# mkdir /var/lib/filebeat

FreeBSDな慢るづりねて/usr/local/bin なざぞぐとfilebeatね罭が堳房の奼まて。上ねゴ・ヒジ訬宙甧ピ゠ィリねfilebeatねpathめ罭が堳房な吇ゎずり。

/lib/systemd/system/filebeat.service (斯覎)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
[Unit]
Description=filebeat
Documentation=https://www.elastic.co/guide/en/beats/filebeat/5.6/index.html
Wants=userwork-online.target
After=network-online.target

[Service]
ExecStart=/usr/local/bin/filebeat -c /etc/filebeat.yml -path.data /var/lib/filebeat -path.logs /var/log/filebeat
Restart=always

[Install]
WantedBy=multi-user.target

訬宙

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
### 兤劚 ###
filebeat.prospectors:
    -
        input_type: log
        paths:
            - /var/log/*.log

### 凹劚 ###
#elasticsearhな退り堳吇 (退俠兇 ペジデ192.168.0.2 ボ・デ9200)
#output.elasticsearch:
#  hosts: ["192.168.0.2:9200"]

#logstashな退り堳吇 (退俠兇 ペジデ192.168.0.2 ボ・デ5043)
output.logstash:
  hosts: ["192.168.0.2:5043"]

ヅジデどねて/var/logなぁりピ゠ィリ同か.logて絁ゎりピ゠ィリ內郧ゑ盢覕じり。

Filebeat赶勔

# systemctl enable filebeat.service   #←ゴ・ヒジゑ月劸匕 (替刜ね1囝ねま)
# service filebeat start              #←ゴ・ヒジゑ閊姊

テ・ゾ取俠偳 Logstashね訬宙

/usr/local/etc/logstash/test.conf (ヅジデ甧訬宙ピ゠ィリ)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
input {
    beats {
        port => 5043
    }
}

output {
    stdout {
        codec => rubydebug
    }
}
ヅジデ甧ね凹劚兇の樘溕凹劚でじり。

ヅジデ甧Logstashね实衋

# /usr/local/logstash/bin/logstash  --path.data /tmp -f /usr/local/etc/logstash/test.conf

旡な勔ぃづぃりLogstashで判なLogstashゑ实衋じりでがの--path.data てとげお曷が辻ま叮胼どテアルギデラゑ挆宙じり。
ゲポヲト实衋およ暪ぎの双忛か焠ぃょぅな覊ぇりおめざるどぃぐと径ぢづぃるはlogstashねムヂズ・シね律なfilebeatおよねテ・ゾか衧礹ごるりょぅなどり筇。
どぉ、レクね衧礹か偛ぽぢぞ堳吇のレクか迼功ごるりょぅどげで(侊ぇはNanoPi NEOなレクィヲざ盳じどと)ゑじりで斯ぞどレクね衋か迼功ごるづぜるか衧礹ごるり(筇)。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
{
    "@timestamp" => 2018-02-27T11:55:04.563Z,
        "offset" => 77635,
      "@version" => "1",
    "input_type" => "log",
          "beat" => {
            "name" => "nanopineo2",
        "hostname" => "nanopineo2",
         "version" => "5.6.7"
    },
          "host" => "nanopineo2",
        "source" => "/var/log/auth.log",
       "message" => "Feb 27 11:55:01 localhost CRON[1753]: pam_unix(cron:session): session opened for user root by (uid=0)",
          "type" => "log",
          "tags" => [
        [0] "beats_input_codec_plain_applied"
    ]
}

げをど愞しねか欠々な凹劚ごるり。

閡逢託亊: