Skip to content

Commit 50c48d2

Browse files
authored
Merge pull request #157 from rollbar/log4j2-configuration-improvements
Add for rollbar-log4j2 the same configuration options as in rollbar-logback
2 parents 8cf10bb + fa9503c commit 50c48d2

1 file changed

Lines changed: 26 additions & 1 deletion

File tree

rollbar-log4j2/src/main/java/com/rollbar/log4j2/RollbarAppender.java

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@
44

55
import com.rollbar.api.payload.data.Level;
66
import com.rollbar.notifier.Rollbar;
7+
import com.rollbar.notifier.config.Config;
8+
import com.rollbar.notifier.config.ConfigBuilder;
9+
import com.rollbar.notifier.config.ConfigProvider;
10+
import com.rollbar.notifier.config.ConfigProviderHelper;
11+
import com.rollbar.notifier.provider.server.ServerProvider;
712
import com.rollbar.notifier.wrapper.RollbarThrowableWrapper;
813
import com.rollbar.notifier.wrapper.ThrowableWrapper;
914
import java.io.Serializable;
@@ -65,13 +70,33 @@ protected RollbarAppender(String name, Filter filter, Layout<? extends Serializa
6570
@PluginFactory
6671
public static RollbarAppender createAppender(
6772
@PluginAttribute("accessToken") @Required final String accessToken,
73+
@PluginAttribute("endpoint") final String endpoint,
74+
@PluginAttribute("environment") final String environment,
75+
@PluginAttribute("language") final String language,
76+
@PluginAttribute("configProviderClassName") final String configProviderClassName,
6877
@PluginAttribute("name") @Required final String name,
6978
@PluginElement("Layout") Layout<? extends Serializable> layout,
7079
@PluginElement("Filter") Filter filter,
7180
@PluginAttribute("ignoreExceptions") final String ignore
7281
) {
7382

74-
Rollbar rollbar = new Rollbar(withAccessToken(accessToken).build());
83+
ConfigProvider configProvider = ConfigProviderHelper
84+
.getConfigProvider(configProviderClassName);
85+
Config config;
86+
87+
ConfigBuilder configBuilder = withAccessToken(accessToken)
88+
.environment(environment)
89+
.endpoint(endpoint)
90+
.server(new ServerProvider())
91+
.language(language);
92+
93+
if (configProvider != null) {
94+
config = configProvider.provide(configBuilder);
95+
} else {
96+
config = configBuilder.build();
97+
}
98+
99+
Rollbar rollbar = new Rollbar(config);
75100

76101
boolean ignoreExceptions = Booleans.parseBoolean(ignore, true);
77102

0 commit comments

Comments
 (0)