forked from zendesk/maxwell
-
Notifications
You must be signed in to change notification settings - Fork 0
/
config.properties.example
138 lines (103 loc) · 3.89 KB
/
config.properties.example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# tl;dr config
log_level=info
producer=kafka
kafka.bootstrap.servers=localhost:9092
# mysql login info
host=localhost
user=maxwell
password=maxwell
######### general stuff #############
# choose where to produce data to. currently this is one of: stdout|file|kafka
#producer=kafka
# set the log level. note that you can configure things further in log4j2.xml
#log_level=DEBUG # [DEBUG, INFO, WARN, ERROR]
######### mysql stuff ###############
# mysql host to connect to
#host=hostname
# mysql port to connect to
#port=3306
# mysql user to connect as. This user must have REPLICATION SLAVE permissions,
# as well as full access to the `maxwell` (or schema_database) database
#user=maxwell
# mysql password
#password=maxwell
# options to pass into the jdbc connection, given as opt=val&opt2=val2
#jdbc_options=opt1=100&opt2=hello
# name of the mysql database where maxwell keeps its own state
#schema_database=maxwell
# maxwell can optionally replicate from a different server than where it stores
# schema and binlog position info. Specify that different server here:
#
#
#replication_host=other
#replication_user=username
#replication_password=password
#replication_port=3306
######### kafka stuff ###############
# list of kafka brokers
#kafka.bootstrap.servers=hosta:9092,hostb:9092
# kafka topic to write to
#kafka_topic=maxwell
# hash function to use. "default" is just the JVM's 'hashCode'
# function.
#kafka_partition_hash=default # [default, murmur3]
# controls the input input into the hash function. Note that this defines
# which transactions keep ordering with respect to each other. Generally
# here you're making a trade-off between inter-row consistency and balanced
# partitions.
#kafka_partition_by=database # [database, table, primary_key]
# how maxwell writes its kafka key.
#
# 'hash' looks like:
# {"database":"test","table":"tickets","pk.id":10001}
#
# 'array' looks like:
# ["test","tickets",[{"id":10001}]]
#
# currently the default is "hash"
#kafka_key_format=hash # [hash, array]
# other kafka options. Anything prefixed "kafka." will get
# passed directly into the kafka-producer's config.
#kafka.acks=1
#kafka.compression.type=gzip
#kafka.batch.size=16384
######### filter stuff ###############
# filter rows out of Maxwell's output.
# all filters may be given either as literal names, or as java-style regular expressions.
# This is a literal name: "exclude_tables=tblname".
# This is a regexp: "exclude_tables=/tblname_\d+/"
# include *only* these databases
#include_dbs=db1,/db\d+/
# exclude these databases (will override an include)
#exclude_dbs=db3,/db\d+/
# include *only* these tables
#include_tables=tbl1,/tbl\d+/
# exclude these tables
#exclude_tables=tbl1,/tbl\d+/
# "blacklist" these dbs -- this means maxwell will ignore schema
# changes happening to these databases. Can be useful if you have a
# high-churn schema that you want to completely ignore, but it's
# a bit dangerous: once you set this option, you must leave it set, or
# else maxwell will likely blow up.
#
# All of this is to say: don't set this unless you know what you're doing.
#blacklist_dbs=db1,/db\d+/
#blacklist_tables=table1,table_no
#
######### misc stuff ###############
# maxwell's bootstrapping functionality has a couple of modes.
#
# In "async" mode, maxwell will output the replication stream while it
# simultaneously outputs the database to the topic. Note that it won't
# output replication data for any tables it is currently bootstrapping -- this
# data will be buffered and output after the bootstrap is complete.
#
# In "sync" mode, maxwell stops the replication stream while it
# outputs bootstrap data.
#
# async mode keeps ops live while bootstrapping, but carries the possibility of
# data loss (due to buffering transactions). sync mode is safer but you
# have to stop replication.
#bootstrapper=async [sync, async, none]
# output filename when using the "file" producer
#output_file=/path/to/file