From fb3868a8532a6e3b40c305ddd3d317b3fc8e1a29 Mon Sep 17 00:00:00 2001 From: Colm O hEigeartaigh Date: Wed, 31 Jan 2018 15:15:57 +0000 Subject: [PATCH] EAGLE-1075 - Can't specify configuration options for AlertFilePublisher --- .../publisher/impl/AbstractPublishPlugin.java | 4 ++-- .../publisher/impl/AlertFilePublisher.java | 22 ++++++++++++++++--- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/eagle-core/eagle-alert-parent/eagle-alert/alert-engine/src/main/java/org/apache/eagle/alert/engine/publisher/impl/AbstractPublishPlugin.java b/eagle-core/eagle-alert-parent/eagle-alert/alert-engine/src/main/java/org/apache/eagle/alert/engine/publisher/impl/AbstractPublishPlugin.java index 771f736d5c..a04d59a477 100644 --- a/eagle-core/eagle-alert-parent/eagle-alert/alert-engine/src/main/java/org/apache/eagle/alert/engine/publisher/impl/AbstractPublishPlugin.java +++ b/eagle-core/eagle-alert-parent/eagle-alert/alert-engine/src/main/java/org/apache/eagle/alert/engine/publisher/impl/AbstractPublishPlugin.java @@ -66,7 +66,7 @@ public void init(Config config, Publishment publishment, Map conf) throws Except publishment.getDedupStateField(), dedupCache, publishment.getName()); - getLogger().info("{} initiliazed extended deduplicator {} with properties {} successfully", + getLogger().info("{} initialized extended deduplicator {} with properties {} successfully", publishment.getName(), spec.getClassName(), Joiner.on(",").withKeyValueSeparator(">").join( spec.getProperties() == null ? new HashMap() : spec.getProperties())); } catch (Throwable t) { @@ -94,7 +94,7 @@ public void init(Config config, Publishment publishment, Map conf) throws Except } serializer = (IEventSerializer) obj; } catch (Exception e) { - getLogger().error("initialized failed, use default StringEventSerializer, failure message : {}", e.getMessage(), e); + getLogger().error("initialization failed, use default StringEventSerializer, failure message : {}", e.getMessage(), e); serializer = new StringEventSerializer(conf); } } diff --git a/eagle-core/eagle-alert-parent/eagle-alert/alert-engine/src/main/java/org/apache/eagle/alert/engine/publisher/impl/AlertFilePublisher.java b/eagle-core/eagle-alert-parent/eagle-alert/alert-engine/src/main/java/org/apache/eagle/alert/engine/publisher/impl/AlertFilePublisher.java index 375a0da119..0b071d73f1 100644 --- a/eagle-core/eagle-alert-parent/eagle-alert/alert-engine/src/main/java/org/apache/eagle/alert/engine/publisher/impl/AlertFilePublisher.java +++ b/eagle-core/eagle-alert-parent/eagle-alert/alert-engine/src/main/java/org/apache/eagle/alert/engine/publisher/impl/AlertFilePublisher.java @@ -54,13 +54,26 @@ public void init(Config config, Publishment publishment, Map conf) throws Except int numOfFiles = DEFAULT_FILE_NUMBER; if (publishment.getProperties() != null) { if (publishment.getProperties().containsKey(PublishConstants.FILE_NAME)) { - fileName = (String) publishment.getProperties().get(PublishConstants.FILE_NAME); + String property = (String) publishment.getProperties().get(PublishConstants.FILE_NAME); + if (property != null && !"".equals(property)) { + fileName = property; + } } if (publishment.getProperties().containsKey(PublishConstants.ROTATE_EVERY_KB)) { - rotateSize = Integer.valueOf(publishment.getProperties().get(PublishConstants.ROTATE_EVERY_KB).toString()); + Object property = publishment.getProperties().get(PublishConstants.ROTATE_EVERY_KB); + if (property instanceof Integer) { + rotateSize = (Integer)property; + } else if (property instanceof String && !"".equals((String)property)) { + rotateSize = Integer.valueOf((String)property); + } } if (publishment.getProperties().containsKey(PublishConstants.NUMBER_OF_FILES)) { - numOfFiles = Integer.valueOf(publishment.getProperties().get(PublishConstants.NUMBER_OF_FILES).toString()); + Object property = publishment.getProperties().get(PublishConstants.NUMBER_OF_FILES); + if (property instanceof Integer) { + numOfFiles = (Integer)property; + } else if (property instanceof String && !"".equals((String)property)) { + numOfFiles = Integer.valueOf((String)property); + } } } handler = new FileHandler(fileName, rotateSize * 1024, numOfFiles, true); @@ -75,6 +88,9 @@ public PublishmentType getPluginType() { .name("File") .type(AlertFilePublisher.class) .description("Local log file publisher") + .field(PublishConstants.FILE_NAME) + .field(PublishConstants.ROTATE_EVERY_KB) + .field(PublishConstants.NUMBER_OF_FILES) .build(); }