我已配置logstash.conf以动态插入数据库的数据,但问题是:
当我更改表的一行时,该行不会在索引中更新,因为我仅在sql_last_value之后插入新值,尽管我是关于触发器的,但我不确定该怎么做。
input {
jdbc {
jdbc_connection_string =>"jdbc:mysql://localhost:3306/blog"
jdbc_user =>"root"
jdbc_password =>""
jdbc_driver_library =>"C:\Users\saidb\Downloads\mysql-connector-java-5.1.47\mysql-connector-java-5.1.47.jar"
jdbc_driver_class =>"com.mysql.jdbc.Driver"
schedule =>"* * * * *"
statement =>"SELECT * FROM blog_pro WHERE id >:sql_last_value"
use_column_value =>true
tracking_column =>id
}
}
output {
elasticsearch {
hosts =>"localhost:9200"
index =>"blog_pro"
document_type =>"data"
}
}
如果id
用于选择行,则不能这样做。您有2种选择,
每次都选择所有行,然后使用query将它们发送到ES SELECT * FROM blog_pro
,根据您的情况,我认为这不是一个好选择。
创建一个新列last_modified_time
,其中包含记录(行)的最后修改的时间戳。然后使用它来过滤行。注意属性tracking_column_type => "timestamp"
`statement =>”SELECT * FROM blog_pro WHERE last_modiefied_time
:sql_last_value” use_column_value =>true tracking_column =>last_modified_time
tracking_column_type => “timestamp”`
这是完整的logstash配置
input {
jdbc {
jdbc_connection_string =>"jdbc:mysql://192.168.3.57:3306/blog_pro"
jdbc_user =>"dush"
jdbc_password =>"dush"
jdbc_driver_library =>"F:\logstash-6.2.2\bin\mysql-connector-java-5.1.6.jar"
jdbc_driver_class =>"com.mysql.jdbc.Driver"
schedule =>"* * * * *"
statement =>"SELECT * FROM blog_pro WHERE last_modified_time >:sql_last_value"
use_column_value =>true
tracking_column =>last_modified_time
tracking_column_type => "timestamp"
}
}
output
{
#output to elasticsearch
elasticsearch {
hosts => [ "192.168.1.245:9201" ]
action=>update
# "%{id}" - > primary key of the table
document_id => "%{id}"
doc_as_upsert =>true
}
}
请注意,您可能需要清除索引并使用此配置开始索引。我对此进行了测试,并且工作正常。
Elasticsearch版本= 5.xx
logstash版本= 6.2.2
我想使复选框动态地抖动,从数据库MySQL中检索数据。因此,这段代码可以显示来自MySQL的数据。但还是无法一一核对。这是我的代码: 我使用future builder为我的CheckBoxList创建列表。但是在运行代码的时候,上面代码的结果是同时检查了所有的值,那么如何使它们正确呢?
我用一个名为“Person”的对象创建了一个表,我可以从Postman发布、删除和放置。我对如何从postman中输入的JSON创建新查询没有问题。但是,每当我尝试删除或更新(使用put)我的查询时,我都会使用@PathVariable选择我想要的查询,并使用@RequestVariable更新所选数据。但我希望能够从JSON文件中删除或更新。下面是我的代码的样子。 人与物 个人控制器 这是我的P
问题内容: 这个问题已经在这里有了答案 : 如何将mysql更改为mysqli? (11个答案) 3年前关闭。 因此,由于不推荐使用MYSQL,并且eveyone不断告诉我进行更新,所以我认为这是我做的时间。 但是由于我不习惯mysqli_ *,对我来说似乎有些陌生。当我用Mysql编码整个网站时,这不是一个简单的编辑。 所以我想知道:如何将以下代码转换为Mysqli?只是为了给我和其他任何人一个
我有一个静态结构的对象: 我想按键更新它的属性。例如,如果我收到 然后我想更新对象,并有: 我该怎么办?我试图创建一个新对象,类似这样: 我不知道如何从变量中设置键和值的名称
试图用烧瓶和sqlalchemy做一个简单的待办事项应用程序,因为我以前从未在烧瓶中使用过复选框,所以我有以下问题。 应用程序是 HTML是: 当I, 选中复选框以完成待办事项任务并单击更新按钮后,控制台将打印出来: 如何更新数据库以将完整值从“0”更改为“1”? 给出400个错误请求 返回无 返回[] 我想我需要做这样的事情: 这样我就可以 我怎么能从那个不可变的MultiDict(在这种情况下
在我的角度页面中,我面临着动态ng模型值的一些问题。这是我的示例JSON。 我想从这个josn中做的是,在我的页面中创建一个视图,这样,它将包含< code>tab1和< code>tab2作为页面标题,以及相应的< code>value作为< code>checkbox。用户将有选择他的选项的选择性。在提交时,我想得到他选择的选项。我想知道在我的控制器中选择了< code>value1,valu