## case study It is a guide to replicate single mysql table to solr. ## configuration ``` @type mysql_replicator # Set connection settings for replicate source. host localhost username your_mysql_user password your_mysql_password database myweb # Set replicate query configuration. query SELECT id, text, updated_at from search_test; primary_key id # specify unique key (default: id) interval 10s # execute query interval (default: 1m) # Enable detect deletion event not only insert/update events. (default: yes) # It is useful to use `enable_delete no` that keep following recently updated record with this query. # `SELECT * FROM search_test WHERE DATE_ADD(updated_at, INTERVAL 5 MINUTE) > NOW();` enable_delete yes # Format output tag for each events. Placeholders usage as described below. tag replicator.myweb.search_test.${event}.${primary_key} # ${event} : the variation of row event type by insert/update/delete. # ${primary_key} : the value of `replicator_manager.settings.primary_key` in manager table. @type mysql_replicator_solr # Set Solr connection. host localhost port 8983 # Set Solr core name and unique id (primary_key) from tag. # On this case, solr url will be http://localhost:8983/solr/${core_name} tag_format (?[^\.]+)\.(?[^\.]+)\.(?[^\.]+)$ # Set frequency of sending bulk request to Solr. flush_interval 5s # Set maximum retry interval (required fluentd >= 0.10.41) max_retry_wait 1800 # Queued chunks are flushed at shutdown process. # It's sample for td-agent. If you use Yamabiko, replace path from 'td-agent' to 'yamabiko'. flush_at_shutdown yes buffer_type file buffer_path /var/log/td-agent/buffer/mysql_replicator_elasticsearch ``` When you use default core (won't specify), change the value of `tag_format` like below. On this case, the solr url will be set `http://localhost:8983/solr` ``` @type mysql_replicator_solr # Set Solr connection. host localhost port 8983 # Set Solr core name and unique id (primary_key) from tag. # On this case, solr url will be http://localhost:8983/solr/ tag_format (?[^\.]+)\.(?[^\.]+)$ # Set frequency of sending bulk request to Solr. flush_interval 5s # Set maximum retry interval (required fluentd >= 0.10.41) max_retry_wait 1800 # Queued chunks are flushed at shutdown process. # It's sample for td-agent. If you use Yamabiko, replace path from 'td-agent' to 'yamabiko'. flush_at_shutdown yes buffer_type file buffer_path /var/log/td-agent/buffer/mysql_replicator_solr ```