Skip to content

Commit 12898d5

Browse files
authored
Configurable compression (voiceip#11)
1 parent 86a48a6 commit 12898d5

File tree

4 files changed

+8
-2
lines changed

4 files changed

+8
-2
lines changed

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ Install this plugin to publish all of the freeswitch generated events to Kafka r
1111
<param name="bootstrap-servers" value="localhost:9092"/>
1212
<param name="topic-prefix" value="topic_prefix"/>
1313
<param name="buffer-size" value="256" />
14+
<param name="compression" value="snappy"/>
1415
</settings>
1516
</configuration>
1617
```

event_kafka.conf.xml

+1
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,6 @@
66
<param name="username" value="" /> <!-- set it only if you have sasl enabled on your kafka cluster -->
77
<param name="password" value="" />
88
<param name="buffer-size" value="16" />
9+
<param name="compression" value="snappy"/>
910
</settings>
1011
</configuration>

mod_event_kafka.cpp

+5-2
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ namespace mod_event_kafka {
5757
"fs", NULL, "topic-prefix", "Kafka Topic Prefix"),
5858
SWITCH_CONFIG_ITEM("buffer-size", SWITCH_CONFIG_INT, CONFIG_RELOADABLE, &globals.buffer_size,
5959
10, NULL, "buffer-size", "queue.buffering.max.messages"),
60+
SWITCH_CONFIG_ITEM("compression", SWITCH_CONFIG_STRING, CONFIG_RELOADABLE, &globals.compression,
61+
"snappy", NULL, "snappy / lz4 ", "Compression"),
6062
SWITCH_CONFIG_ITEM_END()
6163
};
6264

@@ -67,7 +69,8 @@ namespace mod_event_kafka {
6769
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "Could not open event_kafka.conf\n");
6870
return SWITCH_STATUS_FALSE;
6971
} else {
70-
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "event_kafka.conf loaded [brokers: %s, topic/topic_prefix: %s/%s, username: %s, buffer-size: %d]", globals.brokers, globals.topic, globals.topic_prefix, globals.username, globals.buffer_size);
72+
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "event_kafka.conf loaded [brokers: %s, topic/topic_prefix: %s/%s, username: %s, buffer-size: %d, compression: %s]",
73+
globals.brokers, globals.topic, globals.topic_prefix, globals.username, globals.buffer_size, globals.compression);
7174
}
7275
return SWITCH_STATUS_SUCCESS;
7376
}
@@ -97,7 +100,7 @@ namespace mod_event_kafka {
97100
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, errstr);
98101
}
99102

100-
if (rd_kafka_conf_set(conf, "compression.codec", "snappy", errstr, sizeof(errstr)) != RD_KAFKA_CONF_OK) {
103+
if (rd_kafka_conf_set(conf, "compression.codec", globals.compression, errstr, sizeof(errstr)) != RD_KAFKA_CONF_OK) {
101104
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, errstr);
102105
}
103106

mod_event_kafka.hpp

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ namespace mod_event_kafka {
1414
char *username;
1515
char *password;
1616
int buffer_size;
17+
char *compression;
1718
} globals;
1819

1920
SWITCH_MODULE_LOAD_FUNCTION(mod_event_kafka_load);

0 commit comments

Comments
 (0)