[ 
https://issues.apache.org/jira/browse/NIFI-3238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15889355#comment-15889355
 ] 

ASF GitHub Bot commented on NIFI-3238:
--------------------------------------

Github user mattyb149 commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/1418#discussion_r103596545
  
    --- Diff: 
nifi-nar-bundles/nifi-beats-bundle/nifi-beats-processors/src/main/java/org/apache/nifi/processors/beats/ListenBeats.java
 ---
    @@ -0,0 +1,216 @@
    +/*
    + * 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.beats;
    +
    +import java.io.IOException;
    +import java.nio.ByteBuffer;
    +import java.nio.charset.Charset;
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.HashMap;
    +import java.util.List;
    +import java.util.Map;
    +import java.util.concurrent.BlockingQueue;
    +
    +import javax.net.ssl.SSLContext;
    +
    +import org.apache.nifi.annotation.behavior.InputRequirement;
    +import org.apache.nifi.annotation.behavior.WritesAttribute;
    +import org.apache.nifi.annotation.behavior.WritesAttributes;
    +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.annotation.lifecycle.OnScheduled;
    +import org.apache.nifi.components.PropertyDescriptor;
    +import org.apache.nifi.components.ValidationContext;
    +import org.apache.nifi.components.ValidationResult;
    +import org.apache.nifi.flowfile.attributes.CoreAttributes;
    +import org.apache.nifi.flowfile.attributes.FlowFileAttributeKey;
    +import org.apache.nifi.processor.DataUnit;
    +import org.apache.nifi.processor.ProcessContext;
    +import org.apache.nifi.processor.ProcessSession;
    +import 
org.apache.nifi.processor.util.listen.AbstractListenEventBatchingProcessor;
    +import 
org.apache.nifi.processor.util.listen.dispatcher.AsyncChannelDispatcher;
    +import org.apache.nifi.processor.util.listen.dispatcher.ChannelDispatcher;
    +import 
org.apache.nifi.processor.util.listen.dispatcher.SocketChannelDispatcher;
    +import org.apache.nifi.processor.util.listen.event.EventFactory;
    +import org.apache.nifi.processor.util.listen.handler.ChannelHandlerFactory;
    +import org.apache.nifi.processor.util.listen.response.ChannelResponder;
    +import org.apache.nifi.processor.util.listen.response.ChannelResponse;
    +import org.apache.nifi.processors.beats.event.BeatsEvent;
    +import org.apache.nifi.processors.beats.event.BeatsEventFactory;
    +import org.apache.nifi.processors.beats.frame.BeatsEncoder;
    +import 
org.apache.nifi.processors.beats.handler.BeatsSocketChannelHandlerFactory;
    +import org.apache.nifi.processors.beats.response.BeatsChannelResponse;
    +import org.apache.nifi.processors.beats.response.BeatsResponse;
    +import org.apache.nifi.ssl.SSLContextService;
    +
    +@InputRequirement(InputRequirement.Requirement.INPUT_FORBIDDEN)
    +@Tags({"listen", "beats", "tcp", "logs"})
    +@CapabilityDescription("Listens for messages sent by libbeat compatible 
clients (e.g. filebeats, metricbeats, etc) being sent to a given port over TCP, 
writing its contents in" +
    +        "JSON format to the content of the message to a FlowFile." +
    +        "This processor replaces the now deprecated ListenLumberjack")
    +@WritesAttributes({
    +    @WritesAttribute(attribute = "beats.sender", description = "The 
sending host of the messages."),
    +    @WritesAttribute(attribute = "beats.port", description = "The sending 
port the messages were received over."),
    +    @WritesAttribute(attribute = "beats.sequencenumber", description = 
"The sequence number of the message. Only included if <Batch Size> is 1."),
    +    @WritesAttribute(attribute = "mime.type", description = "The mime.type 
of the content which is application/json")
    +})
    +@SeeAlso(classNames = {"org.apache.nifi.processors.standard.ParseSyslog"})
    +public class ListenBeats extends 
AbstractListenEventBatchingProcessor<BeatsEvent> {
    --- End diff --
    
    Inheriting the RECV_BUFFER_SIZE property from the other 
"AbstractListenEventProcessor" properties might be a little confusing here as 
it is not a "round" number like a power of 2. @bbende any thoughts here?


> ListenLumberjack should support the *beat protocol
> --------------------------------------------------
>
>                 Key: NIFI-3238
>                 URL: https://issues.apache.org/jira/browse/NIFI-3238
>             Project: Apache NiFi
>          Issue Type: Improvement
>            Reporter: Andre F de Miranda
>            Assignee: Andre F de Miranda
>
> ListenLumberjack currently only supports v1 of the Lumberjack protocol. This 
> version has been deprecated in favor of v2, which is used on *beat (e.g. 
> filebeat, packetbeat, etc) edge components of the ELK  stack.
> We should consider deprecating ListenLumberjack or to extend it to handle 
> both v1 and v2 of the protocol.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to