in src/main/java/com/google/cloud/run/kafkascaler/ConfigurationProvider.java [130:154]
StaticConfig staticConfig() throws IOException {
ImmutableSet<String> missingEnvVars =
getMissingEnvVars(ImmutableSet.of("KAFKA_TOPIC_ID", "CONSUMER_GROUP_ID"));
if (!missingEnvVars.isEmpty()) {
throw new IllegalArgumentException(
"Environment variables "
+ String.join(",", missingEnvVars)
+ " are required but not set.");
}
String topicName = envProvider.getEnv("KAFKA_TOPIC_ID");
String consumerGroupId = envProvider.getEnv("CONSUMER_GROUP_ID");
boolean useMinInstances = USE_MIN_INSTANCES_DEFAULT;
if (!isNullOrEmpty(envProvider.getEnv("USE_MIN_INSTANCES"))) {
useMinInstances = Boolean.parseBoolean(envProvider.getEnv("USE_MIN_INSTANCES"));
}
boolean outputScalerMetrics = OUTPUT_SCALER_METRICS_DEFAULT;
if (!isNullOrEmpty(envProvider.getEnv("OUTPUT_SCALER_METRICS"))) {
outputScalerMetrics = Boolean.parseBoolean(envProvider.getEnv("OUTPUT_SCALER_METRICS"));
}
return new StaticConfig(topicName, consumerGroupId, useMinInstances, outputScalerMetrics);
}