1. 程式人生 > 實用技巧 >React-Native 動態的新增或者刪除一個元件

React-Native 動態的新增或者刪除一個元件

什麼是Logstash

Logstash是一款輕量級的日誌蒐集處理框架,可以方便的把分散的、多樣化的日誌蒐集起來,並進行自定義的處理,然後傳輸到指定的位置,比如某個伺服器或檔案。

logstash安裝與測試

解壓,進入bin目錄

logstash ‐e 'input { stdin { } } output { stdout {} } '

控制檯輸入字元,隨後就有日誌輸出

stdin,表示輸入流,指從鍵盤輸入

stdout,表示輸出流,指從顯示器輸出

命令列引數:

-e 執行

--config -f 配置檔案,後跟引數型別可以是一個字串的配置或全路徑檔名或全路徑

路徑(如:/etc/logstash.d/

logstash會自動讀取/etc/logstash.d/目錄下所有*.conf 的文

本檔案,然後在自己記憶體裡拼接成一個完整的大配置檔案再去執行)

MySQL資料匯入ElasticSearch

1)在logstash-5.6.8安裝目錄下建立資料夾mysqletc (名稱隨意)

2)資料夾下建立mysql.conf (名稱隨意) ,內容如下:

input {
  jdbc {
      # mysql jdbc connection string to our backup databse
      jdbc_connection_string => "jdbc:mysql://xxxx:3306/xxxx?characterEncoding=UTF8"
      # the user we wish to excute our statement as
      jdbc_user 
=> "root" jdbc_password => "123456" # the path to our downloaded jdbc driver jdbc_driver_library => "E:/logstash-5.6.8/mysqletc/mysql-connector-java-5.1.46.jar" # the name of the driver class for mysql jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_paging_enabled
=> "true" jdbc_page_size => "50000" #以下對應著要執行的sql的絕對路徑。 #statement_filepath => "" statement => "select id,title,content from xxxx" #定時欄位 各欄位含義(由左至右)分、時、天、月、年,全部為*預設含義為每分鐘都更新(測試結果,不同的話請留言指出) schedule => "* * * * *" } } output { elasticsearch { #ESIP地址與埠 hosts => "127.0.0.1:9200" #ES索引名稱(自己定義的) index => "xxxx" #自增ID編號 document_id => "%{id}" document_type => "article" } stdout { #以JSON格式輸出 codec => json_lines } }

3)將mysql驅動包mysql-connector-java-5.1.46.jar拷貝至D:/logstash-

5.6.8/mysqletc/ 下 。D:/logstash-5.6.8是你的安裝目錄

(4)

(4)命令列下執行

logstash ‐f ../mysqletc/mysql.conf 

觀察控制檯輸出,每間隔1分鐘就執行一次sql查詢

再次重新整理elasticsearch-head的資料顯示,看是否也更新了資料