in pulsar-log4j2-appender/src/main/java/org/apache/pulsar/log4j2/appender/PulsarManager.java [137:178]
private void createClient() throws PulsarClientException {
Map<String, Object> configuration = propertiesToClientConfiguration();
// must be the same as
// https://pulsar.apache.org/docs/en/security-tls-keystore/#configuring-clients
String authPluginClassName = getAndRemoveString("authPlugin", "", configuration);
String authParamsString = getAndRemoveString("authParams", "", configuration);
Authentication authentication =
AuthenticationFactory.create(authPluginClassName, authParamsString);
boolean tlsAllowInsecureConnection =
Boolean.parseBoolean(
getAndRemoveString("tlsAllowInsecureConnection", "false", configuration));
boolean tlsEnableHostnameVerification =
Boolean.parseBoolean(
getAndRemoveString("tlsEnableHostnameVerification", "false", configuration));
final String tlsTrustCertsFilePath =
getAndRemoveString("tlsTrustCertsFilePath", "", configuration);
boolean useKeyStoreTls =
Boolean.parseBoolean(getAndRemoveString("useKeyStoreTls", "false", configuration));
String tlsTrustStoreType = getAndRemoveString("tlsTrustStoreType", "JKS", configuration);
String tlsTrustStorePath = getAndRemoveString("tlsTrustStorePath", "", configuration);
String tlsTrustStorePassword =
getAndRemoveString("tlsTrustStorePassword", "", configuration);
ClientBuilder clientBuilder =
PULSAR_CLIENT_BUILDER.get()
.loadConf(configuration)
.tlsTrustStorePassword(tlsTrustStorePassword)
.tlsTrustStorePath(tlsTrustStorePath)
.tlsTrustCertsFilePath(tlsTrustCertsFilePath)
.tlsTrustStoreType(tlsTrustStoreType)
.useKeyStoreTls(useKeyStoreTls)
.enableTlsHostnameVerification(tlsEnableHostnameVerification)
.allowTlsInsecureConnection(tlsAllowInsecureConnection)
.authentication(authentication);
if (!serviceUrl.isEmpty()) {
clientBuilder.serviceUrl(serviceUrl);
}
client = clientBuilder.build();
}