[jira] [Commented] (NIFI-3699) Update dependency of Logback in 0.x
[ https://issues.apache.org/jira/browse/NIFI-3699?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997471#comment-15997471 ] Michael Moser commented on NIFI-3699: - [~joewitt] I'm thinking that a logback and slf4j upgrade is a bit much for a 0.7.3 release and more appropriate for a 0.8.0 minor release. What are your thoughts on putting this into 0.7.3? > Update dependency of Logback in 0.x > --- > > Key: NIFI-3699 > URL: https://issues.apache.org/jira/browse/NIFI-3699 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 0.7.0, 0.6.1, 0.7.1 >Reporter: Jeff Storck >Priority: Minor > > The maxHistory property in Logback's TimeBasedRollingPolicy is not working in > the version of Logback used by NiFi (1.1.3). Please see [this bug from > QOS.ch's JIRA|https://jira.qos.ch/browse/LOGBACK-747] > Some analysis will need to be done to determine which version of Logback to > use going forward (1.1.9 or 1.2.3). -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997462#comment-15997462 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114890435 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997447#comment-15997447 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114889131 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/ListFilter.java --- @@ -0,0 +1,123 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +public class ListFilter { +private String cachedListString = ""; +private Map> listM = null; + +public static final boolean WHITELIST = true; +public static final boolean BLACKLIST = false; + + +public ListFilter( String listString ) { +setListString( listString ); +} + + +public void setListString( String listString ) { +if (listString == null || listString.isEmpty() ) listString = ""; + +if (!listString.equals(cachedListString) || listM == null) { +buildList( listString ); +} +} + + +private void buildList(String listString) { +listM = new HashMap<>(); + +if (!listString.isEmpty()) { +String[] listElementsAr = listString.replaceAll("\\s+"," ").split(","); + +for (int i = 0; i < listElementsAr.length; i++) { +String[] listPartsAr = listElementsAr[i].split(":"); +ArrayList listTypesAL = new ArrayList(); + +if (listPartsAr.length > 1) { +String[] listTypeElementsAr = listPartsAr[1].split(" "); + +for (String s : listTypeElementsAr) { +if (!s.replaceAll("\\s+","").isEmpty()) { +listTypesAL.add(s); +} +} +} + +listM.put(listPartsAr[0], listTypesAL); +} +} + +cachedListString = listString; +} + + + +/* + * domain and type values can contain regular expressions + * First check if the domain key in matched in the Map. If yes then check if the type + * is matched in the ArrayList pointed to by the domain key. + * Is in list if... + * domain key is not matched: false + * domain key is matched and there are no entries in the ArrayList: true + * domain key is matched and there are entries in the ArrayList but type value is not matched: false + * domain key is matched and there are entries in the ArrayList and the type value is matched: true + */ +public boolean isInList(boolean listStyle, String domain, String type) { +// not in the list... +// whitelist = true since not defining a value for this style means the everything is included +// blacklist = false since not defining a value for this style means nothing is excluded +if (listM.size() == 0) { +return (listStyle) ? true : false; +} + +if (domain == null || domain.isEmpty()) { +return (listStyle) ? true : false; +} + +if (type == null) type = ""; --- End diff -- Please avoid single line if statement. > JMX Processor > - > > Key: NIFI-2724 > URL: https://issues.apache.org/jira/browse/NIFI-2724 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Affects Versions: 1.0.0 > Environment: All platforms with Java RMI support for JMX >Reporter: Brian Burnett >Assig
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997450#comment-15997450 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114887820 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997461#comment-15997461 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114883476 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-nar/pom.xml --- @@ -0,0 +1,35 @@ + + +http://maven.apache.org/POM/4.0.0"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd";>4.0.0 + +org.apache.nifi +nifi-jmx-bundle +1.2.0-SNAPSHOT + +nifi-jmx-nar +nar +NiFi NAR for interacting with Java Managment Extensions + --- End diff -- Are these properties required? > JMX Processor > - > > Key: NIFI-2724 > URL: https://issues.apache.org/jira/browse/NIFI-2724 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Affects Versions: 1.0.0 > Environment: All platforms with Java RMI support for JMX >Reporter: Brian Burnett >Assignee: Andre F de Miranda >Priority: Minor > Labels: processor > Attachments: 0001-NIFI-2724-New-JMX-Processor.patch > > Original Estimate: 24h > Remaining Estimate: 24h > > The JMX Processor feature addition includes only GetJMX without > SecurityManager capabilities at this time. The processor in its current > state is capable of pulling MBean Property and Attribute values from a remote > RMI Server. Each set of Mbean data is wrapped in a JSON formatted FlowFile > for downstream processing. It has the ability to control content with > whitelist and blacklist properties. > Possible use for this processor and the reason it was created is to help make > sense of Kafka server metrics. > Will followup with a SecurityManager Context Service and PutJMX Processor. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997448#comment-15997448 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114883768 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/pom.xml --- @@ -0,0 +1,55 @@ + + +http://maven.apache.org/POM/4.0.0"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd";> + +org.apache.nifi +nifi-jmx-bundle +1.2.0-SNAPSHOT + +4.0.0 +nifi-jmx-processors +jar + + +org.apache.nifi +nifi-api + + +org.apache.nifi +nifi-processor-utils + + +org.apache.nifi +nifi-utils + + +com.google.code.gson --- End diff -- can you reference the version we've already defined in the parent pom? (version 2.7) > JMX Processor > - > > Key: NIFI-2724 > URL: https://issues.apache.org/jira/browse/NIFI-2724 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Affects Versions: 1.0.0 > Environment: All platforms with Java RMI support for JMX >Reporter: Brian Burnett >Assignee: Andre F de Miranda >Priority: Minor > Labels: processor > Attachments: 0001-NIFI-2724-New-JMX-Processor.patch > > Original Estimate: 24h > Remaining Estimate: 24h > > The JMX Processor feature addition includes only GetJMX without > SecurityManager capabilities at this time. The processor in its current > state is capable of pulling MBean Property and Attribute values from a remote > RMI Server. Each set of Mbean data is wrapped in a JSON formatted FlowFile > for downstream processing. It has the ability to control content with > whitelist and blacklist properties. > Possible use for this processor and the reason it was created is to help make > sense of Kafka server metrics. > Will followup with a SecurityManager Context Service and PutJMX Processor. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997455#comment-15997455 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114887372 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997458#comment-15997458 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114884244 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997445#comment-15997445 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114884654 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997449#comment-15997449 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114886280 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/ListFilter.java --- @@ -0,0 +1,123 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +public class ListFilter { +private String cachedListString = ""; +private Map> listM = null; + +public static final boolean WHITELIST = true; +public static final boolean BLACKLIST = false; + + +public ListFilter( String listString ) { +setListString( listString ); +} + + +public void setListString( String listString ) { +if (listString == null || listString.isEmpty() ) listString = ""; --- End diff -- Why are you checking listString.isEmpty() to set it empty after? Am I missing something? > JMX Processor > - > > Key: NIFI-2724 > URL: https://issues.apache.org/jira/browse/NIFI-2724 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Affects Versions: 1.0.0 > Environment: All platforms with Java RMI support for JMX >Reporter: Brian Burnett >Assignee: Andre F de Miranda >Priority: Minor > Labels: processor > Attachments: 0001-NIFI-2724-New-JMX-Processor.patch > > Original Estimate: 24h > Remaining Estimate: 24h > > The JMX Processor feature addition includes only GetJMX without > SecurityManager capabilities at this time. The processor in its current > state is capable of pulling MBean Property and Attribute values from a remote > RMI Server. Each set of Mbean data is wrapped in a JSON formatted FlowFile > for downstream processing. It has the ability to control content with > whitelist and blacklist properties. > Possible use for this processor and the reason it was created is to help make > sense of Kafka server metrics. > Will followup with a SecurityManager Context Service and PutJMX Processor. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997451#comment-15997451 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114884423 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997457#comment-15997457 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114889040 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/ListFilter.java --- @@ -0,0 +1,123 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +public class ListFilter { +private String cachedListString = ""; +private Map> listM = null; + +public static final boolean WHITELIST = true; +public static final boolean BLACKLIST = false; + + +public ListFilter( String listString ) { +setListString( listString ); +} + + +public void setListString( String listString ) { +if (listString == null || listString.isEmpty() ) listString = ""; + +if (!listString.equals(cachedListString) || listM == null) { +buildList( listString ); +} +} + + +private void buildList(String listString) { +listM = new HashMap<>(); + +if (!listString.isEmpty()) { +String[] listElementsAr = listString.replaceAll("\\s+"," ").split(","); + +for (int i = 0; i < listElementsAr.length; i++) { +String[] listPartsAr = listElementsAr[i].split(":"); +ArrayList listTypesAL = new ArrayList(); + +if (listPartsAr.length > 1) { +String[] listTypeElementsAr = listPartsAr[1].split(" "); + +for (String s : listTypeElementsAr) { +if (!s.replaceAll("\\s+","").isEmpty()) { +listTypesAL.add(s); +} +} +} + +listM.put(listPartsAr[0], listTypesAL); +} +} + +cachedListString = listString; +} + + + +/* + * domain and type values can contain regular expressions + * First check if the domain key in matched in the Map. If yes then check if the type + * is matched in the ArrayList pointed to by the domain key. + * Is in list if... + * domain key is not matched: false + * domain key is matched and there are no entries in the ArrayList: true + * domain key is matched and there are entries in the ArrayList but type value is not matched: false + * domain key is matched and there are entries in the ArrayList and the type value is matched: true + */ +public boolean isInList(boolean listStyle, String domain, String type) { +// not in the list... +// whitelist = true since not defining a value for this style means the everything is included +// blacklist = false since not defining a value for this style means nothing is excluded +if (listM.size() == 0) { +return (listStyle) ? true : false; --- End diff -- java return listStyle; Same comments for next part: it's useless to do: return boolean ? true : false You can just return boolean. > JMX Processor > - > > Key: NIFI-2724 > URL: https://issues.apache.org/jira/browse/NIFI-2724 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Affects Versions: 1.0.0 > Environment: All platforms with Java RMI support for JMX >Reporter: Brian Burnett >Assignee: Andre F de Miranda >Priority: Minor >
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997459#comment-15997459 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114883939 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) --- End diff -- To remove if no other processor is referenced here. > JMX Processor > - > > Key: NIFI-2724 > URL: https://issues.apache.org/jira/browse/NIFI-2724 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Affects Versions: 1.0.0 > Environment: All platforms with Java RMI support for JMX >Reporter: Brian Burnett >Assignee: Andre F de Miranda >Priority: Minor > Labels: processor > Attachments: 0001-NIFI-2724-New-JMX-Processor.patch > > Original Estimate: 24h > Remaining Estimate: 24h > > The JMX Processor feature addition includes only GetJMX without > SecurityManager capabilities at this time. The processor in its current > state is capable of pulling MBean Property and Attribute values from a remote > RMI Server. Each set of Mbean data is wrapped in a JSON formatted FlowFile > for downstream processing. It has the
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997454#comment-15997454 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114888247 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997446#comment-15997446 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114887336 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997456#comment-15997456 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114888643 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114884654 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997452#comment-15997452 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114885148 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114883939 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) --- End diff -- To remove if no other processor is referenced here. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114888321 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997444#comment-15997444 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114887973 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997460#comment-15997460 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114888418 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[jira] [Commented] (NIFI-2724) JMX Processor
[ https://issues.apache.org/jira/browse/NIFI-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997453#comment-15997453 ] ASF GitHub Bot commented on NIFI-2724: -- Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114888321 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends A
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114883768 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/pom.xml --- @@ -0,0 +1,55 @@ + + +http://maven.apache.org/POM/4.0.0"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd";> + +org.apache.nifi +nifi-jmx-bundle +1.2.0-SNAPSHOT + +4.0.0 +nifi-jmx-processors +jar + + +org.apache.nifi +nifi-api + + +org.apache.nifi +nifi-processor-utils + + +org.apache.nifi +nifi-utils + + +com.google.code.gson --- End diff -- can you reference the version we've already defined in the parent pom? (version 2.7) --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114883476 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-nar/pom.xml --- @@ -0,0 +1,35 @@ + + +http://maven.apache.org/POM/4.0.0"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd";>4.0.0 + +org.apache.nifi +nifi-jmx-bundle +1.2.0-SNAPSHOT + +nifi-jmx-nar +nar +NiFi NAR for interacting with Java Managment Extensions + --- End diff -- Are these properties required? --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114887820 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114888247 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114889131 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/ListFilter.java --- @@ -0,0 +1,123 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +public class ListFilter { +private String cachedListString = ""; +private Map> listM = null; + +public static final boolean WHITELIST = true; +public static final boolean BLACKLIST = false; + + +public ListFilter( String listString ) { +setListString( listString ); +} + + +public void setListString( String listString ) { +if (listString == null || listString.isEmpty() ) listString = ""; + +if (!listString.equals(cachedListString) || listM == null) { +buildList( listString ); +} +} + + +private void buildList(String listString) { +listM = new HashMap<>(); + +if (!listString.isEmpty()) { +String[] listElementsAr = listString.replaceAll("\\s+"," ").split(","); + +for (int i = 0; i < listElementsAr.length; i++) { +String[] listPartsAr = listElementsAr[i].split(":"); +ArrayList listTypesAL = new ArrayList(); + +if (listPartsAr.length > 1) { +String[] listTypeElementsAr = listPartsAr[1].split(" "); + +for (String s : listTypeElementsAr) { +if (!s.replaceAll("\\s+","").isEmpty()) { +listTypesAL.add(s); +} +} +} + +listM.put(listPartsAr[0], listTypesAL); +} +} + +cachedListString = listString; +} + + + +/* + * domain and type values can contain regular expressions + * First check if the domain key in matched in the Map. If yes then check if the type + * is matched in the ArrayList pointed to by the domain key. + * Is in list if... + * domain key is not matched: false + * domain key is matched and there are no entries in the ArrayList: true + * domain key is matched and there are entries in the ArrayList but type value is not matched: false + * domain key is matched and there are entries in the ArrayList and the type value is matched: true + */ +public boolean isInList(boolean listStyle, String domain, String type) { +// not in the list... +// whitelist = true since not defining a value for this style means the everything is included +// blacklist = false since not defining a value for this style means nothing is excluded +if (listM.size() == 0) { +return (listStyle) ? true : false; +} + +if (domain == null || domain.isEmpty()) { +return (listStyle) ? true : false; +} + +if (type == null) type = ""; --- End diff -- Please avoid single line if statement. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114888418 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114888643 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114889040 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/ListFilter.java --- @@ -0,0 +1,123 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +public class ListFilter { +private String cachedListString = ""; +private Map> listM = null; + +public static final boolean WHITELIST = true; +public static final boolean BLACKLIST = false; + + +public ListFilter( String listString ) { +setListString( listString ); +} + + +public void setListString( String listString ) { +if (listString == null || listString.isEmpty() ) listString = ""; + +if (!listString.equals(cachedListString) || listM == null) { +buildList( listString ); +} +} + + +private void buildList(String listString) { +listM = new HashMap<>(); + +if (!listString.isEmpty()) { +String[] listElementsAr = listString.replaceAll("\\s+"," ").split(","); + +for (int i = 0; i < listElementsAr.length; i++) { +String[] listPartsAr = listElementsAr[i].split(":"); +ArrayList listTypesAL = new ArrayList(); + +if (listPartsAr.length > 1) { +String[] listTypeElementsAr = listPartsAr[1].split(" "); + +for (String s : listTypeElementsAr) { +if (!s.replaceAll("\\s+","").isEmpty()) { +listTypesAL.add(s); +} +} +} + +listM.put(listPartsAr[0], listTypesAL); +} +} + +cachedListString = listString; +} + + + +/* + * domain and type values can contain regular expressions + * First check if the domain key in matched in the Map. If yes then check if the type + * is matched in the ArrayList pointed to by the domain key. + * Is in list if... + * domain key is not matched: false + * domain key is matched and there are no entries in the ArrayList: true + * domain key is matched and there are entries in the ArrayList but type value is not matched: false + * domain key is matched and there are entries in the ArrayList and the type value is matched: true + */ +public boolean isInList(boolean listStyle, String domain, String type) { +// not in the list... +// whitelist = true since not defining a value for this style means the everything is included +// blacklist = false since not defining a value for this style means nothing is excluded +if (listM.size() == 0) { +return (listStyle) ? true : false; --- End diff -- java return listStyle; Same comments for next part: it's useless to do: return boolean ? true : false You can just return boolean. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114886280 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/ListFilter.java --- @@ -0,0 +1,123 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +public class ListFilter { +private String cachedListString = ""; +private Map> listM = null; + +public static final boolean WHITELIST = true; +public static final boolean BLACKLIST = false; + + +public ListFilter( String listString ) { +setListString( listString ); +} + + +public void setListString( String listString ) { +if (listString == null || listString.isEmpty() ) listString = ""; --- End diff -- Why are you checking listString.isEmpty() to set it empty after? Am I missing something? --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114887336 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114887973 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114887372 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114884244 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114890435 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114885148 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[GitHub] nifi pull request #1016: NIFI-2724 New JMX Processor
Github user pvillard31 commented on a diff in the pull request: https://github.com/apache/nifi/pull/1016#discussion_r114884423 --- Diff: nifi-nar-bundles/nifi-jmx-bundle/nifi-jmx-processors/src/main/java/org/apache/nifi/processors/jmx/GetJMX.java --- @@ -0,0 +1,406 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.processors.jmx; + +import org.apache.nifi.annotation.behavior.InputRequirement; +import org.apache.nifi.annotation.behavior.InputRequirement.Requirement; +import org.apache.nifi.annotation.behavior.WritesAttribute; +import org.apache.nifi.annotation.behavior.WritesAttributes; +import org.apache.nifi.components.PropertyDescriptor; +import org.apache.nifi.components.PropertyValue; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.annotation.lifecycle.OnScheduled; +import org.apache.nifi.annotation.documentation.CapabilityDescription; +import org.apache.nifi.annotation.documentation.SeeAlso; +import org.apache.nifi.annotation.documentation.Tags; +import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.AbstractProcessor; +import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.Relationship; +import org.apache.nifi.processor.ProcessSession; +import org.apache.nifi.processor.exception.ProcessException; +import org.apache.nifi.processor.io.OutputStreamCallback; +import org.apache.nifi.processor.util.StandardValidators; + +import javax.management.MBeanAttributeInfo; +import javax.management.MBeanInfo; +import javax.management.MBeanServerConnection; +import javax.management.ObjectName; +import javax.management.remote.JMXConnector; +import javax.management.remote.JMXConnectorFactory; +import javax.management.remote.JMXServiceURL; +import javax.management.ReflectionException; +import javax.management.InstanceNotFoundException; +import javax.management.IntrospectionException; +import java.io.IOException; +import java.io.OutputStream; +import java.sql.Timestamp; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.ListIterator; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Tags({"JMX"}) +@InputRequirement(Requirement.INPUT_FORBIDDEN) +@SeeAlso({}) +@CapabilityDescription( +"Connects to the JMX RMI Url on the configured hostname and port. " ++ "All domains are queried and can be filtered by providing the full domain name " ++ "and optional MBean type as whitelist or blacklist parameters.\n\n" ++ "Blacklist example to exclude all types that start with 'Memory' and GarbageCollector from the " ++ "java.lang domain and everything from the java.util.logging domain:" ++ "\n\njava.lang:Memory.* GarbageCollector,java.util.logging") +@WritesAttributes({ +@WritesAttribute(attribute="hostname", description="The name of the host that the object originates."), +@WritesAttribute(attribute="port", description="The JMX connection port that the object originates."), +@WritesAttribute(attribute="timestamp", description="The timestamp of when the object was emitted.") }) + +public class GetJMX extends AbstractProcessor { + +public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor +.Builder().name("Hostname") +.displayName("Hostname") +.description("The JMX Hostname or IP addr
[jira] [Commented] (NIFI-3795) nifi-assembly fails with "no formats specified" error
[ https://issues.apache.org/jira/browse/NIFI-3795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997440#comment-15997440 ] Andre F de Miranda commented on NIFI-3795: -- [~jameswing] [~bbende] thanks for the explanation. I had missed the comment with the reasoning behind the commit and was struggling to understand how the magic worked. Great job folks!!! > nifi-assembly fails with "no formats specified" error > - > > Key: NIFI-3795 > URL: https://issues.apache.org/jira/browse/NIFI-3795 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.2.0 >Reporter: Bryan Bende >Assignee: James Wing >Priority: Blocker > Fix For: 1.2.0 > > > After staging the 1.2.0 RC1 artifacts, I then downloaded the source zip from > the Nexus staging repo, unzipped it and ran "mvn clean install -DskipTests" > to verify that it would build. I encountered the below error: > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-assembly-plugin:2.5.2:single (make shared > resource) on project nifi-assembly: No formats specified in the execution > parameters or the assembly descriptor. -> [Help 1] > After some debugging it was determined that one difference between this build > and the previous build that staged the artifacts, is that this build was not > within a git repo where as the other one was. > After running git init, adding all files, and making a commit, then the build > passed. Still unclear as to why being in a git repo matters here, although > every NAR now tries to use the git info from the buildnumber plugin to filter > into the MANIFEST files. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi pull request #1755: NIFI-528 add support to specify timeout in ExecuteP...
GitHub user medjessy opened a pull request: https://github.com/apache/nifi/pull/1755 NIFI-528 add support to specify timeout in ExecuteProcess Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/medjessy/nifi NIFI-528 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/1755.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1755 commit 4e3bad0f14761409df4dbe70eb405270876222b7 Author: Djessy Menard Date: 2017-05-04T18:31:56Z NIFI-528 add support to specify timeout in ExecuteProcess commit 1ad592f730bbfd09fe4f3234dca01e42a14c3cfb Author: Djessy Menard Date: 2017-05-04T19:49:02Z NIFI-528 test ExecuteProcess timeout --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (NIFI-528) Add support to specify a timeout on ExecuteStreamCommand, ExecuteScript, and ExecuteProcess
[ https://issues.apache.org/jira/browse/NIFI-528?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997418#comment-15997418 ] ASF GitHub Bot commented on NIFI-528: - GitHub user medjessy opened a pull request: https://github.com/apache/nifi/pull/1755 NIFI-528 add support to specify timeout in ExecuteProcess Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/medjessy/nifi NIFI-528 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/1755.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1755 commit 4e3bad0f14761409df4dbe70eb405270876222b7 Author: Djessy Menard Date: 2017-05-04T18:31:56Z NIFI-528 add support to specify timeout in ExecuteProcess commit 1ad592f730bbfd09fe4f3234dca01e42a14c3cfb Author: Djessy Menard Date: 2017-05-04T19:49:02Z NIFI-528 test ExecuteProcess timeout > Add support to specify a timeout on ExecuteStreamCommand, ExecuteScript, and > ExecuteProcess > > > Key: NIFI-528 > URL: https://issues.apache.org/jira/browse/NIFI-528 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Reporter: Michael Wagner > Labels: beginner, processor > > Should be a way to specify a timeout on ExecuteStreamCommand, ExecuteScript, > and ExecuteProcess. If the script hung for some reason, kill the process and > move on, send the timeout flowfile to a failure route. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (NIFI-3809) S2S Reporting tasks should provide the option to choose transport protocol
[ https://issues.apache.org/jira/browse/NIFI-3809?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pierre Villard updated NIFI-3809: - Status: Patch Available (was: Open) > S2S Reporting tasks should provide the option to choose transport protocol > -- > > Key: NIFI-3809 > URL: https://issues.apache.org/jira/browse/NIFI-3809 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Affects Versions: 1.2.0 >Reporter: Pierre Villard >Assignee: Pierre Villard > > Right now Site-to-Site based reporting tasks are using the default RAW > protocol but some users might not want to open a port for that. It should be > possible to use HTTP. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3809) S2S Reporting tasks should provide the option to choose transport protocol
[ https://issues.apache.org/jira/browse/NIFI-3809?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997410#comment-15997410 ] ASF GitHub Bot commented on NIFI-3809: -- GitHub user pvillard31 opened a pull request: https://github.com/apache/nifi/pull/1754 NIFI-3809 - Added HTTP mode and HTTP proxy for S2S Reporting Tasks Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [X] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [X] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [X] Has your PR been rebased against the latest commit within the target branch (typically master)? - [X] Is your initial contribution a single, squashed commit? ### For code changes: - [X] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [X] Have you written or updated unit tests to verify your changes? - [X] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/pvillard31/nifi NIFI-3809 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/1754.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1754 commit c077a3da893f5c56e505bc1c94f51c8f2fc30ecf Author: Pierre Villard Date: 2017-05-04T20:43:32Z NIFI-3809 - Added HTTP mode and HTTP proxy for S2S Reporting Tasks > S2S Reporting tasks should provide the option to choose transport protocol > -- > > Key: NIFI-3809 > URL: https://issues.apache.org/jira/browse/NIFI-3809 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Affects Versions: 1.2.0 >Reporter: Pierre Villard >Assignee: Pierre Villard > > Right now Site-to-Site based reporting tasks are using the default RAW > protocol but some users might not want to open a port for that. It should be > possible to use HTTP. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi pull request #1754: NIFI-3809 - Added HTTP mode and HTTP proxy for S2S ...
GitHub user pvillard31 opened a pull request: https://github.com/apache/nifi/pull/1754 NIFI-3809 - Added HTTP mode and HTTP proxy for S2S Reporting Tasks Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [X] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [X] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [X] Has your PR been rebased against the latest commit within the target branch (typically master)? - [X] Is your initial contribution a single, squashed commit? ### For code changes: - [X] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [X] Have you written or updated unit tests to verify your changes? - [X] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/pvillard31/nifi NIFI-3809 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/1754.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1754 commit c077a3da893f5c56e505bc1c94f51c8f2fc30ecf Author: Pierre Villard Date: 2017-05-04T20:43:32Z NIFI-3809 - Added HTTP mode and HTTP proxy for S2S Reporting Tasks --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp issue #91: MINIFI-258 - Removing Configure, StreamFactory, T...
Github user brosander commented on the issue: https://github.com/apache/nifi-minifi-cpp/pull/91 Thanks for feedback, changed those back and am rerunning build/tests --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp pull request #91: MINIFI-258 - Removing Configure, StreamFac...
Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/91#discussion_r114861465 --- Diff: libminifi/include/core/FlowConfiguration.h --- @@ -55,8 +56,9 @@ class FlowConfiguration : public CoreComponent { * Constructor that will be used for configuring * the flow controller. */ - FlowConfiguration(std::shared_ptr repo, -std::shared_ptr flow_file_repo, + FlowConfiguration(const std::shared_ptr &repo, --- End diff -- Same as flow controller --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp pull request #91: MINIFI-258 - Removing Configure, StreamFac...
Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/91#discussion_r114864639 --- Diff: libminifi/include/EventDrivenSchedulingAgent.h --- @@ -38,8 +38,8 @@ class EventDrivenSchedulingAgent : public ThreadedSchedulingAgent { /*! * Create a new processor */ - EventDrivenSchedulingAgent(std::shared_ptr repo) - : ThreadedSchedulingAgent(repo) { + EventDrivenSchedulingAgent(const std::shared_ptr &repo, const std::shared_ptr &configure) --- End diff -- These schedulers stop in a way in which we don't guarantee threads to stop. We wait in flow controller 1s to stop threads, thus we can't be 100% certain that the scheduled threads have stopped. They "probably" did, but we likely want to keep this pass by value to ensure that we are guaranteed shared ownership of the shared repo. Since the threads are daemon threads, they will stop eventually, but we probably want to avoid the error of a dereferencing deleted memory if we can to aid in eventual recoverability ( if that's a thing ). --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp pull request #91: MINIFI-258 - Removing Configure, StreamFac...
Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/91#discussion_r114863373 --- Diff: libminifi/include/FlowController.h --- @@ -64,8 +64,9 @@ class FlowController : public core::CoreComponent { /** * Flow controller constructor */ - FlowController(std::shared_ptr provenance_repo, - std::shared_ptr flow_file_repo, + FlowController(const std::shared_ptr &provenance_repo, --- End diff -- we could move the original std shared ptr to subsume ownership, but I'm not sure we want that. We want to say we're sharing ownership with this object and thus this object ( FlowController ) helps in determining the lifetime of shared_ptr. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp pull request #91: MINIFI-258 - Removing Configure, StreamFac...
Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/91#discussion_r114861428 --- Diff: libminifi/include/core/ConfigurationFactory.h --- @@ -30,25 +30,29 @@ namespace core { template typename std::enable_if::value, T*>::type instantiate( -std::shared_ptr repo, -std::shared_ptr flow_file_repo, const std::string path) { +const std::shared_ptr &repo, +const std::shared_ptr &flow_file_repo, const std::string path) { throw std::runtime_error("Cannot instantiate class"); } template typename std::enable_if::value, T*>::type instantiate( -std::shared_ptr repo, -std::shared_ptr flow_file_repo, const std::string path) { - return new T(repo, flow_file_repo, path); +const std::shared_ptr &repo, +const std::shared_ptr &flow_file_repo, +const std::shared_ptr &stream_factory, +const std::string path) { + return new T(repo, flow_file_repo, stream_factory, path); } /** * Configuration factory is used to create a new FlowConfiguration * object. */ std::unique_ptr createFlowConfiguration( --- End diff -- Same as flow controller. The ones in instantiate, above, are fine. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp pull request #91: MINIFI-258 - Removing Configure, StreamFac...
Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/91#discussion_r114861939 --- Diff: libminifi/include/core/yaml/YamlConfiguration.h --- @@ -41,10 +42,12 @@ namespace core { class YamlConfiguration : public FlowConfiguration { public: - YamlConfiguration(std::shared_ptr repo, -std::shared_ptr flow_file_repo, + YamlConfiguration(const std::shared_ptr &repo, --- End diff -- might have to do the same here to avoid removing const ( which you can do obviously ) --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp pull request #91: MINIFI-258 - Removing Configure, StreamFac...
Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/91#discussion_r114860818 --- Diff: libminifi/include/FlowController.h --- @@ -64,8 +64,9 @@ class FlowController : public core::CoreComponent { /** * Flow controller constructor */ - FlowController(std::shared_ptr provenance_repo, - std::shared_ptr flow_file_repo, + FlowController(const std::shared_ptr &provenance_repo, --- End diff -- The reason these were pass by value was that we wanted to ensure that we increment the ref counter for flow controller. Thus we won't deallocate memory during its scope. It's a safety mechanism and more importantly indicates that these need to survive FlowController --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp pull request #89: MINIFI-293 Remove thirdparty dependencies ...
Github user asfgit closed the pull request at: https://github.com/apache/nifi-minifi-cpp/pull/89 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (NIFI-3770) Perform Release Manager duties for 1.2.0 Release
[ https://issues.apache.org/jira/browse/NIFI-3770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997257#comment-15997257 ] ASF subversion and git services commented on NIFI-3770: --- Commit 3fd4916a30bdafb13edc150c4169555cc4814988 in nifi's branch refs/heads/NIFI-3770-RC1 from [~bbende] [ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=3fd4916 ] NIFI-3770-RC1 prepare for next development iteration > Perform Release Manager duties for 1.2.0 Release > > > Key: NIFI-3770 > URL: https://issues.apache.org/jira/browse/NIFI-3770 > Project: Apache NiFi > Issue Type: Task >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Fix For: 1.2.0 > > -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3770) Perform Release Manager duties for 1.2.0 Release
[ https://issues.apache.org/jira/browse/NIFI-3770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997256#comment-15997256 ] ASF subversion and git services commented on NIFI-3770: --- Commit 243ed742baddd98d8dcbb9752e07980b04ae2b89 in nifi's branch refs/heads/NIFI-3770-RC1 from [~bbende] [ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=243ed74 ] NIFI-3770-RC1 prepare release nifi-1.2.0-RC1 > Perform Release Manager duties for 1.2.0 Release > > > Key: NIFI-3770 > URL: https://issues.apache.org/jira/browse/NIFI-3770 > Project: Apache NiFi > Issue Type: Task >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Fix For: 1.2.0 > > -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi-minifi-cpp pull request #90: MINIFI-294 Required vs. optional fields in...
Github user asfgit closed the pull request at: https://github.com/apache/nifi-minifi-cpp/pull/90 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp issue #90: MINIFI-294 Required vs. optional fields in config...
Github user kevdoran commented on the issue: https://github.com/apache/nifi-minifi-cpp/pull/90 Cool, thanks @apiri. feel free to squash on merge --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi-minifi-cpp issue #90: MINIFI-294 Required vs. optional fields in config...
Github user apiri commented on the issue: https://github.com/apache/nifi-minifi-cpp/pull/90 @kevdoran, Changes look good. Ran against some sample configs and things work as anticipated. Thanks for correcting this! Will get merged. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Created] (NIFI-3809) S2S Reporting tasks should provide the option to choose transport protocol
Pierre Villard created NIFI-3809: Summary: S2S Reporting tasks should provide the option to choose transport protocol Key: NIFI-3809 URL: https://issues.apache.org/jira/browse/NIFI-3809 Project: Apache NiFi Issue Type: Improvement Components: Extensions Affects Versions: 1.2.0 Reporter: Pierre Villard Assignee: Pierre Villard Right now Site-to-Site based reporting tasks are using the default RAW protocol but some users might not want to open a port for that. It should be possible to use HTTP. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3791) SiteToSiteStatusReportingTask - include back pressure data for connections
[ https://issues.apache.org/jira/browse/NIFI-3791?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997209#comment-15997209 ] ASF GitHub Bot commented on NIFI-3791: -- Github user alopresto commented on the issue: https://github.com/apache/nifi/pull/1745 Ran a sample flow but was getting some odd exceptions. Coordinating with Pierre offline but recommend another party reviews this PR. As it is not going in 1.2.0, there is plenty of time to have a person with more knowledge of the internals do that. > SiteToSiteStatusReportingTask - include back pressure data for connections > -- > > Key: NIFI-3791 > URL: https://issues.apache.org/jira/browse/NIFI-3791 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Affects Versions: 1.2.0 >Reporter: Pierre Villard >Assignee: Pierre Villard > > Two remarks while using the SiteToSiteStatusReportingTask: > - there is a copy/paste mistake in an exception message line 182 > - back pressure information should be included when sending status of a > connection > It'll be useful to monitor connections and raise alerts when back pressure is > enabled on a connection. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi issue #1745: NIFI-3791 - added back pressure data into S2SStatusReporti...
Github user alopresto commented on the issue: https://github.com/apache/nifi/pull/1745 Ran a sample flow but was getting some odd exceptions. Coordinating with Pierre offline but recommend another party reviews this PR. As it is not going in 1.2.0, there is plenty of time to have a person with more knowledge of the internals do that. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Updated] (NIFI-3808) UI - Incorrect style applied to disabled menu items
[ https://issues.apache.org/jira/browse/NIFI-3808?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Matt Gilman updated NIFI-3808: -- Attachment: Screen Shot 2017-05-04 at 2.36.53 PM.png > UI - Incorrect style applied to disabled menu items > --- > > Key: NIFI-3808 > URL: https://issues.apache.org/jira/browse/NIFI-3808 > Project: Apache NiFi > Issue Type: Bug > Components: Core UI >Reporter: Matt Gilman >Assignee: Matt Gilman > Attachments: Screen Shot 2017-05-04 at 2.36.53 PM.png > > > The disabled style meant for the Controller Service enable/disable dialog is > incorrectly being applied to the disabled menu items in the global menu. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (NIFI-3808) UI - Incorrect style applied to disabled menu items
Matt Gilman created NIFI-3808: - Summary: UI - Incorrect style applied to disabled menu items Key: NIFI-3808 URL: https://issues.apache.org/jira/browse/NIFI-3808 Project: Apache NiFi Issue Type: Bug Components: Core UI Reporter: Matt Gilman Assignee: Matt Gilman Attachments: Screen Shot 2017-05-04 at 2.36.53 PM.png The disabled style meant for the Controller Service enable/disable dialog is incorrectly being applied to the disabled menu items in the global menu. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Assigned] (NIFI-3808) UI - Incorrect style applied to disabled menu items
[ https://issues.apache.org/jira/browse/NIFI-3808?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Matt Gilman reassigned NIFI-3808: - Assignee: (was: Matt Gilman) > UI - Incorrect style applied to disabled menu items > --- > > Key: NIFI-3808 > URL: https://issues.apache.org/jira/browse/NIFI-3808 > Project: Apache NiFi > Issue Type: Bug > Components: Core UI >Reporter: Matt Gilman > Attachments: Screen Shot 2017-05-04 at 2.36.53 PM.png > > > The disabled style meant for the Controller Service enable/disable dialog is > incorrectly being applied to the disabled menu items in the global menu. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (NIFI-3807) Show bulletins/configuration errors in Configure [Component] dialog to allow faster resolution of validation issues
Andy LoPresto created NIFI-3807: --- Summary: Show bulletins/configuration errors in Configure [Component] dialog to allow faster resolution of validation issues Key: NIFI-3807 URL: https://issues.apache.org/jira/browse/NIFI-3807 Project: Apache NiFi Issue Type: Improvement Components: Core UI Affects Versions: 1.2.0 Reporter: Andy LoPresto When configuring a processor, there can be many validation issues (e.g. {{SSLContextService}} keystore path doesn't exist, etc.). These issues are visible when mousing over the warning icon in the controller services listing or on the processor on the canvas, but not when editing the component properties. If there are multiple issues, it can require a user to open and close the dialog multiple times to ensure all the validation errors are resolved. I propose displaying the errors in the Configure dialog as well. This could be any/all of: * Display a scrollable list of validation errors below the main dialog view. Clicking the specific error could send UI focus to the appropriate property field * Highlighting individual property fields with a red glow and error message underneath/to the side/with an error icon that allows mouse over * Other community suggestions... -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (NIFI-3806) Allow file browser dialog for processor properties fields which need a local path
Andy LoPresto created NIFI-3806: --- Summary: Allow file browser dialog for processor properties fields which need a local path Key: NIFI-3806 URL: https://issues.apache.org/jira/browse/NIFI-3806 Project: Apache NiFi Issue Type: Improvement Components: Core UI Affects Versions: 1.2.0 Reporter: Andy LoPresto When populating local file system paths in processor/reporting task/controller service properties, it would be helpful to provide a native file browser dialog to allow navigation through the file system. However, I do not propose completely replacing the plaintext field with this, as some people may have copied & pasted or wish to type the path (especially when dealing with hidden or masked files/filetypes). I believe that a special "browse" button could be placed in the expanded pane once focus is given to allow for navigation and populate a hidden {{}} field, from which the value is extracted to the visible plaintext field. (See for example [Kloudless File Explorer|https://github.com/Kloudless/file-explorer].) If this isn't feasible, please indicate and ignore this issue. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (NIFI-3805) When attempting to visit a NiFi deep-link that doesn't exist, go to the root PG
Andy LoPresto created NIFI-3805: --- Summary: When attempting to visit a NiFi deep-link that doesn't exist, go to the root PG Key: NIFI-3805 URL: https://issues.apache.org/jira/browse/NIFI-3805 Project: Apache NiFi Issue Type: Improvement Components: Core UI Affects Versions: 1.2.0 Reporter: Andy LoPresto With the introduction of the deep-linking capability, a user can click on a URL like https://localhost:8080/nifi/?processGroupId=d48915f6-015b-1000-7081-3ef536290233&componentIds= to jump to a specific process group. However, if the process group does not exist, the user will get a NiFi error screen with the message: {quote} An unexpected error has occurred Unable to locate group with id 'd48915f6-015b-1000-7081-3ef536290233'. {quote} This error screen indicates that the entire application is not working, as it is usually found when the application cannot be accessed for a permissions issue or serious internal error. I propose that the view instead redirects to the root PG (or the highest level the user is authorized to view) and a modal error dialog (with only the message "Unable to locate group 'xyz'") is shown. This immediately indicates to the user that the application is still working fine, it's just that the desired group is not available. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi-minifi-cpp issue #89: MINIFI-293 Remove thirdparty dependencies no long...
Github user benqiu2016 commented on the issue: https://github.com/apache/nifi-minifi-cpp/pull/89 +1 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Created] (NIFI-3804) Resolve "too many files open" issues in tests when running full build multiple times
Andy LoPresto created NIFI-3804: --- Summary: Resolve "too many files open" issues in tests when running full build multiple times Key: NIFI-3804 URL: https://issues.apache.org/jira/browse/NIFI-3804 Project: Apache NiFi Issue Type: Bug Components: Tools and Build Affects Versions: 1.2.0 Reporter: Andy LoPresto When running the full build multiple times, tests can fail due to "too many files open" errors. These tests run successfully when the system is rebooted. I have followed configuration best practices (raising max file handles to 50_000) but after repeated test runs, this threshold is maxed out. This leads me to believe there are tests which do not clean up after themselves or temporary files which are not closed and deleted. I suggest using malware detection and analysis tools/VMs to perform a file system snapshot before and after a complete test run and compare to determine what is left open. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi-minifi-cpp issue #90: MINIFI-294 Required vs. optional fields in config...
Github user apiri commented on the issue: https://github.com/apache/nifi-minifi-cpp/pull/90 reviewing --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Created] (NIFI-3803) Allow use of up/down arrow keys during selection in Add Processor dialog
Andy LoPresto created NIFI-3803: --- Summary: Allow use of up/down arrow keys during selection in Add Processor dialog Key: NIFI-3803 URL: https://issues.apache.org/jira/browse/NIFI-3803 Project: Apache NiFi Issue Type: Improvement Components: Core UI Affects Versions: 1.2.0 Reporter: Andy LoPresto Priority: Trivial In the Add Processor dialog, it would be convenient to be able to use the up and down arrow keys to select the filtered results after typing the first few characters of the desired component name. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (NIFI-3802) Update site/evangelize how to access ASF NiFi Hipchat room
Aldrin Piri created NIFI-3802: - Summary: Update site/evangelize how to access ASF NiFi Hipchat room Key: NIFI-3802 URL: https://issues.apache.org/jira/browse/NIFI-3802 Project: Apache NiFi Issue Type: Task Components: Documentation & Website Reporter: Aldrin Piri Assignee: Aldrin Piri As part of https://issues.apache.org/jira/browse/INFRA-14090 a HipChat room was created on the ASF instance with a publicly accessible link. This would be a helpful resource for allowing communication more immediately among community members in a location other than GitHub PRs and the like. Once documentation is established, should also send out messages to dev and users as another resource available. Accessible here: https://www.hipchat.com/gzh2m5YML -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (NIFI-3795) nifi-assembly fails with "no formats specified" error
[ https://issues.apache.org/jira/browse/NIFI-3795?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Bryan Bende updated NIFI-3795: -- Resolution: Fixed Status: Resolved (was: Patch Available) > nifi-assembly fails with "no formats specified" error > - > > Key: NIFI-3795 > URL: https://issues.apache.org/jira/browse/NIFI-3795 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.2.0 >Reporter: Bryan Bende >Assignee: James Wing >Priority: Blocker > Fix For: 1.2.0 > > > After staging the 1.2.0 RC1 artifacts, I then downloaded the source zip from > the Nexus staging repo, unzipped it and ran "mvn clean install -DskipTests" > to verify that it would build. I encountered the below error: > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-assembly-plugin:2.5.2:single (make shared > resource) on project nifi-assembly: No formats specified in the execution > parameters or the assembly descriptor. -> [Help 1] > After some debugging it was determined that one difference between this build > and the previous build that staged the artifacts, is that this build was not > within a git repo where as the other one was. > After running git init, adding all files, and making a commit, then the build > passed. Still unclear as to why being in a git repo matters here, although > every NAR now tries to use the git info from the buildnumber plugin to filter > into the MANIFEST files. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi issue #1750: NIFI-3795 Activate generateArchives outside git
Github user jvwing commented on the issue: https://github.com/apache/nifi/pull/1750 This PR is obsolete. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (NIFI-3795) nifi-assembly fails with "no formats specified" error
[ https://issues.apache.org/jira/browse/NIFI-3795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997103#comment-15997103 ] ASF GitHub Bot commented on NIFI-3795: -- Github user jvwing commented on the issue: https://github.com/apache/nifi/pull/1750 This PR is obsolete. > nifi-assembly fails with "no formats specified" error > - > > Key: NIFI-3795 > URL: https://issues.apache.org/jira/browse/NIFI-3795 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.2.0 >Reporter: Bryan Bende >Assignee: James Wing >Priority: Blocker > Fix For: 1.2.0 > > > After staging the 1.2.0 RC1 artifacts, I then downloaded the source zip from > the Nexus staging repo, unzipped it and ran "mvn clean install -DskipTests" > to verify that it would build. I encountered the below error: > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-assembly-plugin:2.5.2:single (make shared > resource) on project nifi-assembly: No formats specified in the execution > parameters or the assembly descriptor. -> [Help 1] > After some debugging it was determined that one difference between this build > and the previous build that staged the artifacts, is that this build was not > within a git repo where as the other one was. > After running git init, adding all files, and making a commit, then the build > passed. Still unclear as to why being in a git repo matters here, although > every NAR now tries to use the git info from the buildnumber plugin to filter > into the MANIFEST files. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3795) nifi-assembly fails with "no formats specified" error
[ https://issues.apache.org/jira/browse/NIFI-3795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997104#comment-15997104 ] ASF GitHub Bot commented on NIFI-3795: -- Github user jvwing closed the pull request at: https://github.com/apache/nifi/pull/1750 > nifi-assembly fails with "no formats specified" error > - > > Key: NIFI-3795 > URL: https://issues.apache.org/jira/browse/NIFI-3795 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.2.0 >Reporter: Bryan Bende >Assignee: James Wing >Priority: Blocker > Fix For: 1.2.0 > > > After staging the 1.2.0 RC1 artifacts, I then downloaded the source zip from > the Nexus staging repo, unzipped it and ran "mvn clean install -DskipTests" > to verify that it would build. I encountered the below error: > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-assembly-plugin:2.5.2:single (make shared > resource) on project nifi-assembly: No formats specified in the execution > parameters or the assembly descriptor. -> [Help 1] > After some debugging it was determined that one difference between this build > and the previous build that staged the artifacts, is that this build was not > within a git repo where as the other one was. > After running git init, adding all files, and making a commit, then the build > passed. Still unclear as to why being in a git repo matters here, although > every NAR now tries to use the git info from the buildnumber plugin to filter > into the MANIFEST files. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi pull request #1750: NIFI-3795 Activate generateArchives outside git
Github user jvwing closed the pull request at: https://github.com/apache/nifi/pull/1750 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (NIFI-3795) nifi-assembly fails with "no formats specified" error
[ https://issues.apache.org/jira/browse/NIFI-3795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997102#comment-15997102 ] Bryan Bende commented on NIFI-3795: --- Thanks [~jameswing] ! I will mark this JIRA as resolved. > nifi-assembly fails with "no formats specified" error > - > > Key: NIFI-3795 > URL: https://issues.apache.org/jira/browse/NIFI-3795 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.2.0 >Reporter: Bryan Bende >Assignee: James Wing >Priority: Blocker > Fix For: 1.2.0 > > > After staging the 1.2.0 RC1 artifacts, I then downloaded the source zip from > the Nexus staging repo, unzipped it and ran "mvn clean install -DskipTests" > to verify that it would build. I encountered the below error: > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-assembly-plugin:2.5.2:single (make shared > resource) on project nifi-assembly: No formats specified in the execution > parameters or the assembly descriptor. -> [Help 1] > After some debugging it was determined that one difference between this build > and the previous build that staged the artifacts, is that this build was not > within a git repo where as the other one was. > After running git init, adding all files, and making a commit, then the build > passed. Still unclear as to why being in a git repo matters here, although > every NAR now tries to use the git info from the buildnumber plugin to filter > into the MANIFEST files. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3795) nifi-assembly fails with "no formats specified" error
[ https://issues.apache.org/jira/browse/NIFI-3795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997095#comment-15997095 ] ASF subversion and git services commented on NIFI-3795: --- Commit d9410d640475b73d215bd3da6c14cb599e778a64 in nifi's branch refs/heads/master from [~bbende] [ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=d9410d6 ] NIFI-3795 Moved no-git profile to nifi-nar-bundles Removing buildnumber plugin and build-info-no-git profile from nifi-assembly and adding build-info-no-git profile to nifi-nar-bundles pom Signed-off-by: James Wing > nifi-assembly fails with "no formats specified" error > - > > Key: NIFI-3795 > URL: https://issues.apache.org/jira/browse/NIFI-3795 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.2.0 >Reporter: Bryan Bende >Assignee: James Wing >Priority: Blocker > Fix For: 1.2.0 > > > After staging the 1.2.0 RC1 artifacts, I then downloaded the source zip from > the Nexus staging repo, unzipped it and ran "mvn clean install -DskipTests" > to verify that it would build. I encountered the below error: > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-assembly-plugin:2.5.2:single (make shared > resource) on project nifi-assembly: No formats specified in the execution > parameters or the assembly descriptor. -> [Help 1] > After some debugging it was determined that one difference between this build > and the previous build that staged the artifacts, is that this build was not > within a git repo where as the other one was. > After running git init, adding all files, and making a commit, then the build > passed. Still unclear as to why being in a git repo matters here, although > every NAR now tries to use the git info from the buildnumber plugin to filter > into the MANIFEST files. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3791) SiteToSiteStatusReportingTask - include back pressure data for connections
[ https://issues.apache.org/jira/browse/NIFI-3791?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997094#comment-15997094 ] ASF GitHub Bot commented on NIFI-3791: -- Github user alopresto commented on the issue: https://github.com/apache/nifi/pull/1745 Reviewing... > SiteToSiteStatusReportingTask - include back pressure data for connections > -- > > Key: NIFI-3791 > URL: https://issues.apache.org/jira/browse/NIFI-3791 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Affects Versions: 1.2.0 >Reporter: Pierre Villard >Assignee: Pierre Villard > > Two remarks while using the SiteToSiteStatusReportingTask: > - there is a copy/paste mistake in an exception message line 182 > - back pressure information should be included when sending status of a > connection > It'll be useful to monitor connections and raise alerts when back pressure is > enabled on a connection. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi issue #1745: NIFI-3791 - added back pressure data into S2SStatusReporti...
Github user alopresto commented on the issue: https://github.com/apache/nifi/pull/1745 Reviewing... --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (NIFI-3795) nifi-assembly fails with "no formats specified" error
[ https://issues.apache.org/jira/browse/NIFI-3795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997092#comment-15997092 ] James Wing commented on NIFI-3795: -- I reviewed [~bbende]'s change [cb576b7|https://github.com/bbende/nifi/commit/cb576b725ea95add2525d575fc8db52c22dd2d9f]. Everything looks good to me. Removing the build-info-no-git profile from nifi-assembly lets the generateArchives and dir-only profiles work in an intuitive manner, even for a source build. Tests and contrib-check pass, and NiFi still works. Profiles active in the source build from a normal {{mvn clean install}}: {code} Active Profiles for Project 'org.apache.nifi:nifi-assembly:pom:1.2.0': The following profiles are active: - gpg (source: external) - generateArchives (source: org.apache.nifi:nifi-assembly:1.2.0) - disable-doclint (source: org.apache.nifi:nifi:1.2.0) {code} {code} Active Profiles for Project 'org.apache.nifi:nifi-nar-bundles:pom:1.2.0': The following profiles are active: - gpg (source: external) - build-info-no-git (source: org.apache.nifi:nifi-nar-bundles:1.2.0) - disable-doclint (source: org.apache.nifi:nifi:1.2.0) {code} I will merge in a moment, and close the PR. > nifi-assembly fails with "no formats specified" error > - > > Key: NIFI-3795 > URL: https://issues.apache.org/jira/browse/NIFI-3795 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.2.0 >Reporter: Bryan Bende >Assignee: James Wing >Priority: Blocker > Fix For: 1.2.0 > > > After staging the 1.2.0 RC1 artifacts, I then downloaded the source zip from > the Nexus staging repo, unzipped it and ran "mvn clean install -DskipTests" > to verify that it would build. I encountered the below error: > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-assembly-plugin:2.5.2:single (make shared > resource) on project nifi-assembly: No formats specified in the execution > parameters or the assembly descriptor. -> [Help 1] > After some debugging it was determined that one difference between this build > and the previous build that staged the artifacts, is that this build was not > within a git repo where as the other one was. > After running git init, adding all files, and making a commit, then the build > passed. Still unclear as to why being in a git repo matters here, although > every NAR now tries to use the git info from the buildnumber plugin to filter > into the MANIFEST files. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (NIFI-3801) Mute the component versions in Help component listing
Andy LoPresto created NIFI-3801: --- Summary: Mute the component versions in Help component listing Key: NIFI-3801 URL: https://issues.apache.org/jira/browse/NIFI-3801 Project: Apache NiFi Issue Type: Improvement Components: Documentation & Website Affects Versions: 1.2.0 Reporter: Andy LoPresto Priority: Trivial Attachments: Screen Shot 2017-05-04 at 1.03.56 PM.png, Screen Shot 2017-05-04 at 12.59.03 PM.png The new help pages display the component versions alongside the component name. This is helpful, but the visual appearance is overly similar and can make it more difficult to quickly pick out the component name being looked for. I propose changing the color and size of the component version to make the distinction clearer, similar to the "Documentation Overview" header on the page. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (NIFI-3801) Mute the component versions in Help component listing
[ https://issues.apache.org/jira/browse/NIFI-3801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-3801: Attachment: Screen Shot 2017-05-04 at 12.59.03 PM.png Screen Shot 2017-05-04 at 1.03.56 PM.png > Mute the component versions in Help component listing > - > > Key: NIFI-3801 > URL: https://issues.apache.org/jira/browse/NIFI-3801 > Project: Apache NiFi > Issue Type: Improvement > Components: Documentation & Website >Affects Versions: 1.2.0 >Reporter: Andy LoPresto >Priority: Trivial > Labels: beginner, component-versioning, documentation > Attachments: Screen Shot 2017-05-04 at 1.03.56 PM.png, Screen Shot > 2017-05-04 at 12.59.03 PM.png > > > The new help pages display the component versions alongside the component > name. This is helpful, but the visual appearance is overly similar and can > make it more difficult to quickly pick out the component name being looked > for. > I propose changing the color and size of the component version to make the > distinction clearer, similar to the "Documentation Overview" header > on the page. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (NIFI-3788) Support wildcard certificates in Amazon S3 Processors
[ https://issues.apache.org/jira/browse/NIFI-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-3788: Summary: Support wildcard certificates in Amazon S3 Processors (was: Support wildcard certificates in SSLStandardContextService) > Support wildcard certificates in Amazon S3 Processors > - > > Key: NIFI-3788 > URL: https://issues.apache.org/jira/browse/NIFI-3788 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.1.1 >Reporter: Andy LoPresto >Assignee: Andy LoPresto > Labels: certificate, pki, security, tls > Fix For: 1.2.0 > > > Some users have reported issues when attempting to connect to an external > service which is secured for TLS via a wildcard certificate (i.e. hostname is > {{https://example.domain.com}} and the certificate DN contains > {{CN=\*.domain.com}} when *using the Amazon Web Services (AWS S3) > processors*. -This requires changes in the {{SSLStandardContextService}} to > correctly parse the CN and evaluate wildcard entries if present- This > required changes in the {{DefaultHostnameVerifier}} instance being passed to > the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in > {{AbstractAWSProcessor}}. > In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], > certificate evaluation (specifically hostname validation) should prioritize > Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement > this prioritization, which can cause issues with certificate validation even > if the CN matches the hostname but SANs are present but do not include the > hostname. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (NIFI-3788) Support wildcard certificates in SSLStandardContextService
[ https://issues.apache.org/jira/browse/NIFI-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-3788: Description: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=\*.domain.com}} when *using the Amazon Web Services (AWS S3) processors*. -This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present- This required changes in the {{DefaultHostnameVerifier}} instance being passed to the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in {{AbstractAWSProcessor}}. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. was: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=*.domain.com}} when *using the Amazon Web Services (AWS S3) processors*. -This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present- This required changes in the {{DefaultHostnameVerifier}} instance being passed to the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in {{AbstractAWSProcessor}}. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. > Support wildcard certificates in SSLStandardContextService > -- > > Key: NIFI-3788 > URL: https://issues.apache.org/jira/browse/NIFI-3788 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.1.1 >Reporter: Andy LoPresto >Assignee: Andy LoPresto > Labels: certificate, pki, security, tls > Fix For: 1.2.0 > > > Some users have reported issues when attempting to connect to an external > service which is secured for TLS via a wildcard certificate (i.e. hostname is > {{https://example.domain.com}} and the certificate DN contains > {{CN=\*.domain.com}} when *using the Amazon Web Services (AWS S3) > processors*. -This requires changes in the {{SSLStandardContextService}} to > correctly parse the CN and evaluate wildcard entries if present- This > required changes in the {{DefaultHostnameVerifier}} instance being passed to > the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in > {{AbstractAWSProcessor}}. > In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], > certificate evaluation (specifically hostname validation) should prioritize > Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement > this prioritization, which can cause issues with certificate validation even > if the CN matches the hostname but SANs are present but do not include the > hostname. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (NIFI-3788) Support wildcard certificates in SSLStandardContextService
[ https://issues.apache.org/jira/browse/NIFI-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-3788: Description: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=*.domain.com}} when *using the Amazon Web Services (AWS S3) processors*. -This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present- This required changes in the {{DefaultHostnameVerifier}} instance being passed to the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in {{AbstractAWSProcessor}}. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. was: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=*.domain.com}} when **using the Amazon Web Services (AWS S3) processors**. -This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present- This required changes in the {{DefaultHostnameVerifier}} instance being passed to the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in {{AbstractAWSProcessor}}. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. > Support wildcard certificates in SSLStandardContextService > -- > > Key: NIFI-3788 > URL: https://issues.apache.org/jira/browse/NIFI-3788 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.1.1 >Reporter: Andy LoPresto >Assignee: Andy LoPresto > Labels: certificate, pki, security, tls > Fix For: 1.2.0 > > > Some users have reported issues when attempting to connect to an external > service which is secured for TLS via a wildcard certificate (i.e. hostname is > {{https://example.domain.com}} and the certificate DN contains > {{CN=*.domain.com}} when *using the Amazon Web Services (AWS S3) processors*. > -This requires changes in the {{SSLStandardContextService}} to correctly > parse the CN and evaluate wildcard entries if present- This required changes > in the {{DefaultHostnameVerifier}} instance being passed to the > {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in > {{AbstractAWSProcessor}}. > In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], > certificate evaluation (specifically hostname validation) should prioritize > Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement > this prioritization, which can cause issues with certificate validation even > if the CN matches the hostname but SANs are present but do not include the > hostname. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (NIFI-3788) Support wildcard certificates in SSLStandardContextService
[ https://issues.apache.org/jira/browse/NIFI-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-3788: Description: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=*.domain.com}} when **using the Amazon Web Services (AWS S3) processors**. -This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present- This required changes in the {{DefaultHostnameVerifier}} instance being passed to the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in {{AbstractAWSProcessor}}. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. was: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=*.domain.com}} **using the Amazon Web Services (AWS S3) processors**. -This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present- This required changes in the {{DefaultHostnameVerifier}} instance being passed to the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in {{AbstractAWSProcessor}}. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. > Support wildcard certificates in SSLStandardContextService > -- > > Key: NIFI-3788 > URL: https://issues.apache.org/jira/browse/NIFI-3788 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.1.1 >Reporter: Andy LoPresto >Assignee: Andy LoPresto > Labels: certificate, pki, security, tls > Fix For: 1.2.0 > > > Some users have reported issues when attempting to connect to an external > service which is secured for TLS via a wildcard certificate (i.e. hostname is > {{https://example.domain.com}} and the certificate DN contains > {{CN=*.domain.com}} when **using the Amazon Web Services (AWS S3) > processors**. -This requires changes in the {{SSLStandardContextService}} to > correctly parse the CN and evaluate wildcard entries if present- This > required changes in the {{DefaultHostnameVerifier}} instance being passed to > the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in > {{AbstractAWSProcessor}}. > In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], > certificate evaluation (specifically hostname validation) should prioritize > Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement > this prioritization, which can cause issues with certificate validation even > if the CN matches the hostname but SANs are present but do not include the > hostname. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (NIFI-3788) Support wildcard certificates in SSLStandardContextService
[ https://issues.apache.org/jira/browse/NIFI-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-3788: Description: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=*.domain.com}} **using the Amazon Web Services (AWS S3) processors**. -This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present- This required changes in the {{DefaultHostnameVerifier}} instance being passed to the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in {{AbstractAWSProcessor}}. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. was: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=*.domain.com}} **using the Amazon Web Services (AWS S3) processors**. ~~This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present~~ This required changes in the {{DefaultHostnameVerifier}} instance being passed to the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in {{AbstractAWSProcessor}}. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. > Support wildcard certificates in SSLStandardContextService > -- > > Key: NIFI-3788 > URL: https://issues.apache.org/jira/browse/NIFI-3788 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.1.1 >Reporter: Andy LoPresto >Assignee: Andy LoPresto > Labels: certificate, pki, security, tls > Fix For: 1.2.0 > > > Some users have reported issues when attempting to connect to an external > service which is secured for TLS via a wildcard certificate (i.e. hostname is > {{https://example.domain.com}} and the certificate DN contains > {{CN=*.domain.com}} **using the Amazon Web Services (AWS S3) processors**. > -This requires changes in the {{SSLStandardContextService}} to correctly > parse the CN and evaluate wildcard entries if present- This required changes > in the {{DefaultHostnameVerifier}} instance being passed to the > {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in > {{AbstractAWSProcessor}}. > In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], > certificate evaluation (specifically hostname validation) should prioritize > Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement > this prioritization, which can cause issues with certificate validation even > if the CN matches the hostname but SANs are present but do not include the > hostname. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (NIFI-3788) Support wildcard certificates in SSLStandardContextService
[ https://issues.apache.org/jira/browse/NIFI-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-3788: Description: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=*.domain.com}} **using the Amazon Web Services (AWS S3) processors**. ~~This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present~~ This required changes in the {{DefaultHostnameVerifier}} instance being passed to the {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in {{AbstractAWSProcessor}}. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. was: Some users have reported issues when attempting to connect to an external service which is secured for TLS via a wildcard certificate (i.e. hostname is {{https://example.domain.com}} and the certificate DN contains {{CN=*.domain.com}}. This requires changes in the {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard entries if present. In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], certificate evaluation (specifically hostname validation) should prioritize Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement this prioritization, which can cause issues with certificate validation even if the CN matches the hostname but SANs are present but do not include the hostname. > Support wildcard certificates in SSLStandardContextService > -- > > Key: NIFI-3788 > URL: https://issues.apache.org/jira/browse/NIFI-3788 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.1.1 >Reporter: Andy LoPresto >Assignee: Andy LoPresto > Labels: certificate, pki, security, tls > Fix For: 1.2.0 > > > Some users have reported issues when attempting to connect to an external > service which is secured for TLS via a wildcard certificate (i.e. hostname is > {{https://example.domain.com}} and the certificate DN contains > {{CN=*.domain.com}} **using the Amazon Web Services (AWS S3) processors**. > ~~This requires changes in the {{SSLStandardContextService}} to correctly > parse the CN and evaluate wildcard entries if present~~ This required changes > in the {{DefaultHostnameVerifier}} instance being passed to the > {{SdkTLSSocketFactory}} and {{AmazonHTTPClientConfig}} in > {{AbstractAWSProcessor}}. > In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], > certificate evaluation (specifically hostname validation) should prioritize > Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement > this prioritization, which can cause issues with certificate validation even > if the CN matches the hostname but SANs are present but do not include the > hostname. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3796) Encrypted provenance repository test failure on Win10
[ https://issues.apache.org/jira/browse/NIFI-3796?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997006#comment-15997006 ] ASF GitHub Bot commented on NIFI-3796: -- Github user mcgilman commented on the issue: https://github.com/apache/nifi/pull/1751 Thanks @alopresto. Verified that that tests in question pass on my Windows 10 VM. This has been merged to master. > Encrypted provenance repository test failure on Win10 > - > > Key: NIFI-3796 > URL: https://issues.apache.org/jira/browse/NIFI-3796 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework > Environment: Apache Maven 3.3.9 > (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T11:41:47-05:00) > Maven home: C:\development\tools\apache-maven-3.3.9 > Java version: 1.8.0_102, vendor: Oracle Corporation > Java home: C:\Program Files\Java\jdk1.8.0_102\jre > Default locale: en_US, platform encoding: Cp1252 > OS name: "windows 10", version: "10.0", arch: "amd64", family: "dos" >Reporter: Joseph Witt >Assignee: Andy LoPresto >Priority: Critical > Fix For: 1.2.0 > > > {code} > Tests run: 15, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.109 sec > <<< FAILURE! - in org.apache.nifi.provenance.CryptoUtilsTest > testShouldNotValidateUnreadableOrMissingFileBasedKeyProvider(org.apache.nifi.provenance.CryptoUtilsTest) > Time elapsed: 0.016 sec <<< ERROR! > java.lang.UnsupportedOperationException: null > at java.nio.file.Files.setPosixFilePermissions(Files.java:2044) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93) > at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) > at > org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.invoke(StaticMetaMethodSite.java:46) > at > org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.call(StaticMetaMethodSite.java:91) > at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133) > at > org.apache.nifi.provenance.CryptoUtilsTest.testShouldNotValidateUnreadableOrMissingFileBasedKeyProvider(CryptoUtilsTest.groovy:187) > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3796) Encrypted provenance repository test failure on Win10
[ https://issues.apache.org/jira/browse/NIFI-3796?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997005#comment-15997005 ] ASF GitHub Bot commented on NIFI-3796: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/1751 > Encrypted provenance repository test failure on Win10 > - > > Key: NIFI-3796 > URL: https://issues.apache.org/jira/browse/NIFI-3796 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework > Environment: Apache Maven 3.3.9 > (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T11:41:47-05:00) > Maven home: C:\development\tools\apache-maven-3.3.9 > Java version: 1.8.0_102, vendor: Oracle Corporation > Java home: C:\Program Files\Java\jdk1.8.0_102\jre > Default locale: en_US, platform encoding: Cp1252 > OS name: "windows 10", version: "10.0", arch: "amd64", family: "dos" >Reporter: Joseph Witt >Assignee: Andy LoPresto >Priority: Critical > Fix For: 1.2.0 > > > {code} > Tests run: 15, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.109 sec > <<< FAILURE! - in org.apache.nifi.provenance.CryptoUtilsTest > testShouldNotValidateUnreadableOrMissingFileBasedKeyProvider(org.apache.nifi.provenance.CryptoUtilsTest) > Time elapsed: 0.016 sec <<< ERROR! > java.lang.UnsupportedOperationException: null > at java.nio.file.Files.setPosixFilePermissions(Files.java:2044) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93) > at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) > at > org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.invoke(StaticMetaMethodSite.java:46) > at > org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.call(StaticMetaMethodSite.java:91) > at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133) > at > org.apache.nifi.provenance.CryptoUtilsTest.testShouldNotValidateUnreadableOrMissingFileBasedKeyProvider(CryptoUtilsTest.groovy:187) > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Resolved] (NIFI-3796) Encrypted provenance repository test failure on Win10
[ https://issues.apache.org/jira/browse/NIFI-3796?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Matt Gilman resolved NIFI-3796. --- Resolution: Fixed > Encrypted provenance repository test failure on Win10 > - > > Key: NIFI-3796 > URL: https://issues.apache.org/jira/browse/NIFI-3796 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework > Environment: Apache Maven 3.3.9 > (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T11:41:47-05:00) > Maven home: C:\development\tools\apache-maven-3.3.9 > Java version: 1.8.0_102, vendor: Oracle Corporation > Java home: C:\Program Files\Java\jdk1.8.0_102\jre > Default locale: en_US, platform encoding: Cp1252 > OS name: "windows 10", version: "10.0", arch: "amd64", family: "dos" >Reporter: Joseph Witt >Assignee: Andy LoPresto >Priority: Critical > Fix For: 1.2.0 > > > {code} > Tests run: 15, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.109 sec > <<< FAILURE! - in org.apache.nifi.provenance.CryptoUtilsTest > testShouldNotValidateUnreadableOrMissingFileBasedKeyProvider(org.apache.nifi.provenance.CryptoUtilsTest) > Time elapsed: 0.016 sec <<< ERROR! > java.lang.UnsupportedOperationException: null > at java.nio.file.Files.setPosixFilePermissions(Files.java:2044) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93) > at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) > at > org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.invoke(StaticMetaMethodSite.java:46) > at > org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.call(StaticMetaMethodSite.java:91) > at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133) > at > org.apache.nifi.provenance.CryptoUtilsTest.testShouldNotValidateUnreadableOrMissingFileBasedKeyProvider(CryptoUtilsTest.groovy:187) > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi issue #1751: NIFI-3796 Fixed Windows test failures due to POSIX permiss...
Github user mcgilman commented on the issue: https://github.com/apache/nifi/pull/1751 Thanks @alopresto. Verified that that tests in question pass on my Windows 10 VM. This has been merged to master. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] nifi pull request #1751: NIFI-3796 Fixed Windows test failures due to POSIX ...
Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/1751 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (NIFI-3796) Encrypted provenance repository test failure on Win10
[ https://issues.apache.org/jira/browse/NIFI-3796?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997003#comment-15997003 ] ASF subversion and git services commented on NIFI-3796: --- Commit 7f2f38be5237a2f8064ca58b52f9587b4f0920a3 in nifi's branch refs/heads/master from [~alopresto] [ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=7f2f38b ] NIFI-3796 Added test logic to only run POSIX permission set on *nix OS. Separated missing and unreadable key providers to different tests and run unreadable on POSIX-compliant OS only. This closes #1751 > Encrypted provenance repository test failure on Win10 > - > > Key: NIFI-3796 > URL: https://issues.apache.org/jira/browse/NIFI-3796 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework > Environment: Apache Maven 3.3.9 > (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T11:41:47-05:00) > Maven home: C:\development\tools\apache-maven-3.3.9 > Java version: 1.8.0_102, vendor: Oracle Corporation > Java home: C:\Program Files\Java\jdk1.8.0_102\jre > Default locale: en_US, platform encoding: Cp1252 > OS name: "windows 10", version: "10.0", arch: "amd64", family: "dos" >Reporter: Joseph Witt >Assignee: Andy LoPresto >Priority: Critical > Fix For: 1.2.0 > > > {code} > Tests run: 15, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.109 sec > <<< FAILURE! - in org.apache.nifi.provenance.CryptoUtilsTest > testShouldNotValidateUnreadableOrMissingFileBasedKeyProvider(org.apache.nifi.provenance.CryptoUtilsTest) > Time elapsed: 0.016 sec <<< ERROR! > java.lang.UnsupportedOperationException: null > at java.nio.file.Files.setPosixFilePermissions(Files.java:2044) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93) > at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) > at > org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.invoke(StaticMetaMethodSite.java:46) > at > org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.call(StaticMetaMethodSite.java:91) > at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133) > at > org.apache.nifi.provenance.CryptoUtilsTest.testShouldNotValidateUnreadableOrMissingFileBasedKeyProvider(CryptoUtilsTest.groovy:187) > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Resolved] (NIFI-3788) Support wildcard certificates in SSLStandardContextService
[ https://issues.apache.org/jira/browse/NIFI-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Bryan Rosander resolved NIFI-3788. -- Resolution: Fixed Fix Version/s: 1.2.0 > Support wildcard certificates in SSLStandardContextService > -- > > Key: NIFI-3788 > URL: https://issues.apache.org/jira/browse/NIFI-3788 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.1.1 >Reporter: Andy LoPresto >Assignee: Andy LoPresto > Labels: certificate, pki, security, tls > Fix For: 1.2.0 > > > Some users have reported issues when attempting to connect to an external > service which is secured for TLS via a wildcard certificate (i.e. hostname is > {{https://example.domain.com}} and the certificate DN contains > {{CN=*.domain.com}}. This requires changes in the > {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard > entries if present. > In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], > certificate evaluation (specifically hostname validation) should prioritize > Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement > this prioritization, which can cause issues with certificate validation even > if the CN matches the hostname but SANs are present but do not include the > hostname. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3788) Support wildcard certificates in SSLStandardContextService
[ https://issues.apache.org/jira/browse/NIFI-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15997000#comment-15997000 ] ASF GitHub Bot commented on NIFI-3788: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/1753 > Support wildcard certificates in SSLStandardContextService > -- > > Key: NIFI-3788 > URL: https://issues.apache.org/jira/browse/NIFI-3788 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.1.1 >Reporter: Andy LoPresto >Assignee: Andy LoPresto > Labels: certificate, pki, security, tls > Fix For: 1.2.0 > > > Some users have reported issues when attempting to connect to an external > service which is secured for TLS via a wildcard certificate (i.e. hostname is > {{https://example.domain.com}} and the certificate DN contains > {{CN=*.domain.com}}. This requires changes in the > {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard > entries if present. > In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], > certificate evaluation (specifically hostname validation) should prioritize > Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement > this prioritization, which can cause issues with certificate validation even > if the CN matches the hostname but SANs are present but do not include the > hostname. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (NIFI-3788) Support wildcard certificates in SSLStandardContextService
[ https://issues.apache.org/jira/browse/NIFI-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15996999#comment-15996999 ] ASF subversion and git services commented on NIFI-3788: --- Commit 4f40eca16ce64b0acfd60fe76d974a4e13a9951b in nifi's branch refs/heads/master from [~alopresto] [ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=4f40eca ] NIFI-3788 Switched Amazon HTTP client instantiation from using null HostnameVerifier (which defaulted to Strict, which cannot handle wildcard certificate hostnames) to DefaultHostnameVerifier, which is fine. I still want to add unit tests and integration tests, but I ran a flow which had previously caused the reproducible exception and this worked fine (flow showed objects were put in S3, no exceptions, and I verified through AWS Web Console that new objects were present). This closes #1753. Signed-off-by: Bryan Rosander > Support wildcard certificates in SSLStandardContextService > -- > > Key: NIFI-3788 > URL: https://issues.apache.org/jira/browse/NIFI-3788 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.1.1 >Reporter: Andy LoPresto >Assignee: Andy LoPresto > Labels: certificate, pki, security, tls > > Some users have reported issues when attempting to connect to an external > service which is secured for TLS via a wildcard certificate (i.e. hostname is > {{https://example.domain.com}} and the certificate DN contains > {{CN=*.domain.com}}. This requires changes in the > {{SSLStandardContextService}} to correctly parse the CN and evaluate wildcard > entries if present. > In addition, as specified by [RFC 2818|https://tools.ietf.org/html/rfc2818], > certificate evaluation (specifically hostname validation) should prioritize > Subject Alternative Names over DN parsing. Chrome 58+ has begun to implement > this prioritization, which can cause issues with certificate validation even > if the CN matches the hostname but SANs are present but do not include the > hostname. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[GitHub] nifi pull request #1753: NIFI-3788 Switched Amazon HTTP client instantiation...
Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/1753 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---