私のMS SQLテーブルには、日付が「dd-mm-yyyy 00:00:00.000」の形式で文字列として保存された列があります。たとえば、1999-10-06 00:00:00.000または2000-04-27 00: 00:00.000
インポート中に、この列の値を日付型に変換したいと考えています。
このタイプの変換を行うことができるフィルターと呼ばれる機能を見ました。例を見つけましたが、Beats によってもたらされたログの全文行を一種の正規表現で解析するためだけです。
SQL列にこの機能を使用する方法は? たとえば、このconfファイルを実際に機能させるにはどうすればよいでしょうか?
input {
jdbc {
jdbc_connection_string => "jdbc:localhost;"
jdbc_user => "user"
jdbc_password => "pass"
jdbc_driver_library => "C:\Program Files (x86)\jdbc\sqljdbc_6.0\enu\sqljdbc42.jar"
jdbc_driver_class => "com.microsoft.sqlserver.jdbc.SQLServerDriver"
statement => "SELECT * FROM SOLD"
}
}
filter
{
date {
match => [ "DATE_COLUMN", "YYYY-MM-dd 00:00:00.000" ]
}
}
output {
elasticsearch {
hosts => "localhost:9200"
index => "indexname"
document_type => "typename"
}
}
現時点では、この conf は機能せず、次の ES テキスト フィールドを作成します。
"date_column": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}