<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
  ~ 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.
  -->

<template encoding-version="1.0">
    <description></description>
    <groupId>d7261cce-f2bb-4ae9-9e73-199b79137a16</groupId>
    <name>MiNiFi TailTail LogAttribute</name>
    <snippet>
        <connections>
            <id>aadfc150-660d-4a35-beb0-2dbd351daca9</id>
            <parentGroupId>d7261cce-f2bb-4ae9-9e73-199b79137a16</parentGroupId>
            <backPressureDataSizeThreshold>1 GB</backPressureDataSizeThreshold>
            <backPressureObjectThreshold>10000</backPressureObjectThreshold>
            <destination>
                <groupId>d7261cce-f2bb-4ae9-9e73-199b79137a16</groupId>
                <id>5a36371c-4884-41cb-8792-073deb6c256a</id>
                <type>PROCESSOR</type>
            </destination>
            <flowFileExpiration>0 sec</flowFileExpiration>
            <labelIndex>1</labelIndex>
            <name></name>
            <selectedRelationships>success</selectedRelationships>
            <source>
                <groupId>d7261cce-f2bb-4ae9-9e73-199b79137a16</groupId>
                <id>dd9611ff-7820-4109-b33f-db43d98613d7</id>
                <type>PROCESSOR</type>
            </source>
            <zIndex>0</zIndex>
        </connections>
        <processors>
            <id>5a36371c-4884-41cb-8792-073deb6c256a</id>
            <parentGroupId>d7261cce-f2bb-4ae9-9e73-199b79137a16</parentGroupId>
            <position>
                <x>2261.0</x>
                <y>539.5399780273438</y>
            </position>
            <config>
                <bulletinLevel>WARN</bulletinLevel>
                <comments></comments>
                <concurrentlySchedulableTaskCount>1</concurrentlySchedulableTaskCount>
                <lossTolerant>false</lossTolerant>
                <penaltyDuration>30 sec</penaltyDuration>
                <properties>
                    <entry>
                        <key>Log Level</key>
                    </entry>
                    <entry>
                        <key>Log Payload</key>
                    </entry>
                    <entry>
                        <key>Attributes to Log</key>
                    </entry>
                    <entry>
                        <key>Attributes to Ignore</key>
                    </entry>
                    <entry>
                        <key>Log prefix</key>
                    </entry>
                </properties>
                <runDurationMillis>0</runDurationMillis>
                <schedulingPeriod>0 sec</schedulingPeriod>
                <schedulingStrategy>TIMER_DRIVEN</schedulingStrategy>
                <yieldDuration>1 sec</yieldDuration>
            </config>
            <name>LogAttribute</name>
            <relationships>
                <autoTerminate>true</autoTerminate>
                <name>success</name>
            </relationships>
            <style/>
            <type>org.apache.nifi.processors.standard.LogAttribute</type>
        </processors>
        <processors>
            <id>dd9611ff-7820-4109-b33f-db43d98613d7</id>
            <parentGroupId>d7261cce-f2bb-4ae9-9e73-199b79137a16</parentGroupId>
            <position>
                <x>2281.0</x>
                <y>291.53997802734375</y>
            </position>
            <config>
                <bulletinLevel>WARN</bulletinLevel>
                <comments></comments>
                <concurrentlySchedulableTaskCount>1</concurrentlySchedulableTaskCount>
                <lossTolerant>false</lossTolerant>
                <penaltyDuration>30 sec</penaltyDuration>
                <properties>
                    <entry>
                        <key>File to Tail</key>
                        <value>./logs/minifi-app.log</value>
                    </entry>
                    <entry>
                        <key>Rolling Filename Pattern</key>
                    </entry>
                    <entry>
                        <key>State File</key>
                    </entry>
                    <entry>
                        <key>Initial Start Position</key>
                    </entry>
                    <entry>
                        <key>File Location</key>
                    </entry>
                </properties>
                <runDurationMillis>0</runDurationMillis>
                <schedulingPeriod>0 sec</schedulingPeriod>
                <schedulingStrategy>TIMER_DRIVEN</schedulingStrategy>
                <yieldDuration>1 sec</yieldDuration>
            </config>
            <name>TailFile</name>
            <relationships>
                <autoTerminate>false</autoTerminate>
                <name>success</name>
            </relationships>
            <style/>
            <type>org.apache.nifi.processors.standard.TailFile</type>
        </processors>
    </snippet>
    <timestamp>07/03/2016 21:16:16 EDT</timestamp>
</template>