[flexcdc]
;location of mysqlbinlog.  path will be searched if this path is not provided
mysqlbinlog=/usr/local/mysql/bin/mysqlbinlog

;The database in which to write changelogs and in which to store the state tables (see the next section).  If you are using Flexviews, then you MUST NOT change this value.
database=flexviews

;where to write error messages (default is the current directory) 
;must be full path and filename otherwise
error_log=flexcdc.err

;the following three tables store the metadata information for FlexCDC including at which binary log file/position to which binary logs have been processed. You MUST NOT include database names on these tables.  They will all be placed into the database specified above.  If you are using flexcdc for something OTHER THAN FLEXVIEWS then you can remap the table names which FlexCDC uses to alternative names.  DO NOT CHANGE THESE VALUES IF YOU ARE USING FLEXVIEWS or if you don't have a very good reason to change them.

binlog_consumer_status=binlog_consumer_status
mvlogs=mvlogs
mview_uow=mview_uow

;The following variable sets how long FlexCDC will allow change history to accumulate in the database.  Entries older than 
;the given interval will be purged from the system.  Setting log_retention_interval="10 DAY" (the default) will retain 10 days of change data.  
;The interval must be specified as N DAY or N HOUR (any MySQL INTERVAL will work, without the INTERVAL keyword)
;NOTE: you must run the seperate cleanup_history.php script 
log_retention_interval="10 DAY"

;comma separated list of databases to collect changelogs from, all other databases will be ignored
;since flexcdc uses row-based replication, you don't have to worry about cross database changes 

;only_databases=flexviews,db1,db2,db3
;

;FlexCDC normally records "before" images for updates (recorded as a DELETE).  This can be disabled
;by setting skip_before_update=true.  In that case, only an INSERT will be written.
;SETTING THIS OPTION *IS NOT COMPATIBLE WITH FLEXVIEWS MATERIALIZED VIEWS*!!!!!!!!!
;ONLY SET THIS OPTION IF USING FLEXCDC STANDALONE AND YOU KNOW WHAT YOU ARE DOING
skip_before_update=false

;FlexCDC normally marks INSERTS as a dml_type=1 and DELETEDS as dml_type=-1.
;Some ETLs need to know that a insert or delete is from an update statement.
;set mark_updates=true if you want the dml_type for INSERTS to be 2 and for DELETES -2.
;SETTING THIS OPTION *IS NOT COMPATIBLE WITH FLEXVIEWS MATERIALIZED VIEWS*!!!!!!!!!
;ONLY SET THIS OPTION IF USING FLEXCDC STANDALONE AND YOU KNOW WHAT YOU ARE DOING
mark_updates=false

;Automatically create changelog tables and enable changelogging for ALL tables.
;You might not want to use this option if any of the following is true:
;  you have lots of tables
;  you drop and create tables with the same name
;  you are using flexviews
;  you have tables which you do not need to capture changes from

;If you choose not to use the auto_changelog feature, then you can use add_table.php to create changelogs
;or you can use the flexviews.create_mvlog function in ../proc/create_mvlog.sql
auto_changelog=false

;If you set raise_warnings=true then when Flexviews sees an unsupported command (like DROP) it raises a warning to
;stdout.  You might want to use the 'logger' utility to capture the output if you turn this on
raise_warnings=false

;Bulk insertion inserts all changes in a transaction as one big INSERT statement.
bulk_insert=true

;The next two variables control the amount of time that FlexCDC spends sleeping between invocations of mysqlbinlog.
;In order to avoid putting excessive load on the master, FlexCDC progressively backs off when it detects no changes
;from the master.  By default it will back off in increments of .25 seconds up to five seconds, at which point it
;will no longer increase the wait time any more.  The downside of this setting is that it can make incremental 
;refresh slower because the refresh process may have to wait for FlexCDC to wake and and process the changes that it
;recently committed.
sleep_increment=.25
sleep_maximum=5

;How long consumer_safe.sh sleeps for between retries (default 30 seconds)
failure_sleep_time=30

;Where to write the consumer safe .ini file
;make this is a symlink or hard link or a path
failure_log_file=flex_cdc_log.log

;where to send an email with a tail of the flexcdc.err file
failure_email_address=root@localhost

;If you want to create a plugin that gets row changes instead of using the default
;logging mechanism, specify the plugin file here

;The example plugin prints out all the rows that are sent to it - THEY ARE NOT LOGGED INTO THE MVLOG TABLE
;plugin=example_plugin.php

;You can load more than one file with plugins:
;plugin=file1.php,file2.php 

;plugin_order specifies in which order to load the plugins.  It contains the classname to run (default FlexCDC_Plugin)
;plugin_order=FlexCDC_Plugin

;Of course, if you want more than one plugin, each MUST have a unique name (again this is the CLASS name in the file(s) loaded above)
;plugin_order=Class1,Class2

;The SOURCE is where the change logs are read from.  This does not have to be the same as the local machine.
;this user requires "grant replication client,replication slave"
[source]
user=root
host=127.0.0.1
port=3306
password=

;The DEST is the place where logs are written to.  You should be able to collect from more than one source into a single
;dest, but this is experimental at best
;this user requires SUPER privs
[dest]
user=root
host=127.0.0.1
port=3306
password=

; To write changes to JSON file
;plugin=json_file.php
;plugin_order=json_file
;[json_file]
;add_metadata=1
;path=/path/to/file.txt
