使用mongodb作數據存儲的graylog2日誌系統搭建

1、安裝準備
java

服務器:Red Hat Enterprise Linux Server release 5.6 (Tikanga)git

java運行環境:jdk1.6github

ruby運行環境:ruby 1.9.2web

graylog2-server:https://github.com/downloads/Graylog2/graylog2-server/graylog2-server-0.9.5.tar.gzmongodb

graylog2-web-interface:https://github.com/downloads/Graylog2/graylog2-web-interface/graylog2-web-interface-0.9.5p2.tar.gzapache

2、部署graylog2-server(接收日誌信息)ruby

1.安裝jdk1.6(安裝步驟省略)服務器

2.上傳graylog2-server-0.9.5.tgz 至/opt目錄下app

tar zxvf graylog2-server-0.9.5.tgz測試

ln -s /opt/graylog2-server-0.9.5/graylog2.conf  /etc/graylog2.conf

修改graylog2.conf中mongodb數據源的設置

3.啓動:cd /opt/graylog2-server-0.9.5/bin/ && ./graylog2ctl  start

4.測試:ps aux|grep graylog2 或者查看:/opt/graylog2-server-0.9.5/bin/nohup.out 有無錯誤信息

3、graylog2-web(web UI查看日誌信息)

1.安裝ruby到/usr/local下

下載ruby-1.9.2-p290.tar.gz:http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p290.tar.gz

上傳ruby-1.9.2-p290.tar.gz到/opt下

tar zxvf ruby-1.9.2-p290.tar.gz

cd ruby-1.9.2-p290

./configure --prefix=/usr/local/ruby

make && make install

echo 'PATH=/usr/local/ruby/bin:$PATH  export PATH' >> /etc/profile

source /etc/profile

測試是否安裝成功:ruby -v


2.安裝graylog2-web-interface

上傳graylog2-web-interface.tgz 到/opt下

tar zxvf graylog2-web-interface.tgz

cd  graylog2-web-interface

 

gem install bundler                     ---需連網

bundle install                            ---需連網

 

bundle exec rake db:mongoid:create_indexes RAILS_ENV=production

chmod +x ./script/rails

修改/opt/graylog2-web-interface/conf/下的mongod.yml、general.yml、email.yml

啓動:script/rails server -e production

測試:http://localhost:3000


***後臺啓動:

後臺啓動須要修改:

/usr/local/ruby/lib/ruby/gems/1.9.1/gems/graylog2-declarative_authorization-0.5.2/lib/declarative_authorization/reader.rb  94行

reader.parse(File.read(file), file)修改爲

 reader.parse(File.read(Rails.root.join(file)), file)

而後

cd  /opt/graylog2-web-interface

bundle install --local

啓動:script/rails server -e production -d

*********

添加定時檢查(若是某個錯誤消息達到設定的量能夠報警,確保服務器能夠發送郵件)

*/10 * * * * cd /opt/graylog2-web-interface && /usr/local/ruby/bin/rake RAILS_ENV=production streamalarms:send

*/10 * * * * cd /opt/graylog2-web-interface && /usr/local/ruby/bin/rake RAILS_ENV=production subscriptions:send

測試:能夠先執行一下以上兩行定時器腳本看是否生效

到此graylog2日誌系統已經安裝完畢,

接下來,就能夠使用log4j把項目中的日誌輸出到graylog2了,

需下載gelf4j的jar包:https://github.com/t0xa/gelfj

log4j配置:

log4j.appender.graylog2=org.graylog2.log.GelfAppender
log4j.appender.graylog2.graylogHost=localhost
log4j.appender.graylog2.facility=test
log4j.appender.graylog2.extractStacktrace=true
log4j.appender.graylog2.layout=org.apache.log4j.PatternLayout
log4j.appender.graylog2.layout.ConversionPattern=%p %d{yyyy-MM-dd HH\:mm} %c.%M(%L) | %m%n


####離線安裝########

若是部署日誌系統的服務器沒法連網怎麼辦,下面就是提供一個離線安裝的方法,前提是須要能連網的機器上安裝好後把系統依賴的gems打包。具體方法

1.在已裝好日誌系統的機器上使用bundle pack把依賴的gems打包,會保存在vender/cache下,或者

把/usr/local/ruby/lib/ruby/gems/1.9.1/gems下的gems打包到不能連網的機器上。

2.在不能聯網的機器上把/usr/local/ruby/lib/ruby/gems/1.9.1/gems下的gems都手工安裝一下(使用gem install XXX.gem)

而後進入/opt/graylog2-web-interface  ,執行bundle install --system 這樣就能安裝好所依賴的gems了,其餘的和前面所述的操做同樣


其餘:

graylog2-web-interface默認時間顯示是使用UTC,因此有8小時的時間差,修改方法是

vi /opt/graylog2-web-interface/config/application.rbconfig.time_zone = 'Beijing'

相關文章
相關標籤/搜索