Modified: nifi/site/trunk/docs/nifi-docs/html/user-guide.html URL: http://svn.apache.org/viewvc/nifi/site/trunk/docs/nifi-docs/html/user-guide.html?rev=1695810&r1=1695809&r2=1695810&view=diff ============================================================================== --- nifi/site/trunk/docs/nifi-docs/html/user-guide.html (original) +++ nifi/site/trunk/docs/nifi-docs/html/user-guide.html Fri Aug 14 01:50:54 2015 @@ -450,68 +450,68 @@ body.book #toc,body.book #preamble,body. <h1>Apache NiFi User Guide</h1> <div class="details"> <span id="author" class="author">Apache NiFi Team</span><br> -<span id="email" class="email"><a href="mailto:d...@nifi.incubator.apache.org">d...@nifi.incubator.apache.org</a></span><br> +<span id="email" class="email"><a href="mailto:d...@nifi.apache.org">d...@nifi.apache.org</a></span><br> </div> <div id="toc" class="toc"> <div id="toctitle">Table of Contents</div> <ul class="sectlevel1"> -<li><a href="user-guide.html#introduction">Introduction</a></li> -<li><a href="user-guide.html#terminology">Terminology</a></li> -<li><a href="user-guide.html#User_Interface">NiFi User Interface</a></li> -<li><a href="user-guide.html#building-a-dataflow">Building a DataFlow</a> +<li><a href="#introduction">Introduction</a></li> +<li><a href="#terminology">Terminology</a></li> +<li><a href="#User_Interface">NiFi User Interface</a></li> +<li><a href="#building-a-dataflow">Building a DataFlow</a> <ul class="sectlevel2"> -<li><a href="user-guide.html#adding-components-to-the-canvas">Adding Components to the Canvas</a></li> -<li><a href="user-guide.html#configuring-a-processor">Configuring a Processor</a></li> -<li><a href="user-guide.html#additional-help">Additional Help</a></li> -<li><a href="user-guide.html#Controller_Services_and_Reporting_Tasks">Controller Services and Reporting Tasks</a></li> -<li><a href="user-guide.html#connecting-components">Connecting Components</a></li> -<li><a href="user-guide.html#processor-validation">Processor Validation</a></li> -<li><a href="user-guide.html#example-dataflow">Example Dataflow</a></li> +<li><a href="#adding-components-to-the-canvas">Adding Components to the Canvas</a></li> +<li><a href="#configuring-a-processor">Configuring a Processor</a></li> +<li><a href="#additional-help">Additional Help</a></li> +<li><a href="#Controller_Services_and_Reporting_Tasks">Controller Services and Reporting Tasks</a></li> +<li><a href="#connecting-components">Connecting Components</a></li> +<li><a href="#processor-validation">Processor Validation</a></li> +<li><a href="#example-dataflow">Example Dataflow</a></li> </ul> </li> -<li><a href="user-guide.html#command-and-control-of-dataflow">Command and Control of DataFlow</a> +<li><a href="#command-and-control-of-dataflow">Command and Control of DataFlow</a> <ul class="sectlevel2"> -<li><a href="user-guide.html#starting-a-component">Starting a Component</a></li> -<li><a href="user-guide.html#stopping-a-component">Stopping a Component</a></li> -<li><a href="user-guide.html#enabling-disabling-a-component">Enabling/Disabling a Component</a></li> -<li><a href="user-guide.html#Remote_Group_Transmission">Remote Process Group Transmission</a></li> +<li><a href="#starting-a-component">Starting a Component</a></li> +<li><a href="#stopping-a-component">Stopping a Component</a></li> +<li><a href="#enabling-disabling-a-component">Enabling/Disabling a Component</a></li> +<li><a href="#Remote_Group_Transmission">Remote Process Group Transmission</a></li> </ul> </li> -<li><a href="user-guide.html#navigating">Navigating within a DataFlow</a></li> -<li><a href="user-guide.html#monitoring">Monitoring of DataFlow</a> +<li><a href="#navigating">Navigating within a DataFlow</a></li> +<li><a href="#monitoring">Monitoring of DataFlow</a> <ul class="sectlevel2"> -<li><a href="user-guide.html#processor_anatomy">Anatomy of a Processor</a></li> -<li><a href="user-guide.html#process_group_anatomy">Anatomy of a Process Group</a></li> -<li><a href="user-guide.html#remote_group_anatomy">Anatomy of a Remote Process Group</a></li> -<li><a href="user-guide.html#Summary_Page">Summary Page</a></li> -<li><a href="user-guide.html#Stats_History">Historical Statistics of a Component</a></li> +<li><a href="#processor_anatomy">Anatomy of a Processor</a></li> +<li><a href="#process_group_anatomy">Anatomy of a Process Group</a></li> +<li><a href="#remote_group_anatomy">Anatomy of a Remote Process Group</a></li> +<li><a href="#Summary_Page">Summary Page</a></li> +<li><a href="#Stats_History">Historical Statistics of a Component</a></li> </ul> </li> -<li><a href="user-guide.html#templates">Templates</a> +<li><a href="#templates">Templates</a> <ul class="sectlevel2"> -<li><a href="user-guide.html#Create_Template">Creating a Template</a></li> -<li><a href="user-guide.html#instantiating-a-template">Instantiating a Template</a></li> -<li><a href="user-guide.html#Manage_Templates">Managing Templates</a></li> +<li><a href="#Create_Template">Creating a Template</a></li> +<li><a href="#instantiating-a-template">Instantiating a Template</a></li> +<li><a href="#Manage_Templates">Managing Templates</a></li> </ul> </li> -<li><a href="user-guide.html#data-provenance">Data Provenance</a> +<li><a href="#data-provenance">Data Provenance</a> <ul class="sectlevel2"> -<li><a href="user-guide.html#searching-for-events">Searching for Events</a></li> -<li><a href="user-guide.html#event_details">Details of an Event</a></li> -<li><a href="user-guide.html#replaying-a-flowfile">Replaying a FlowFile</a></li> -<li><a href="user-guide.html#viewing-flowfile-lineage">Viewing FlowFile Lineage</a></li> +<li><a href="#searching-for-events">Searching for Events</a></li> +<li><a href="#event_details">Details of an Event</a></li> +<li><a href="#replaying-a-flowfile">Replaying a FlowFile</a></li> +<li><a href="#viewing-flowfile-lineage">Viewing FlowFile Lineage</a></li> </ul> </li> -<li><a href="user-guide.html#other_management_features">Other Management Features</a></li> +<li><a href="#other_management_features">Other Management Features</a></li> </ul> </div> </div> <div id="content"> <div class="sect1"> -<h2 id="introduction"><a class="anchor" href="user-guide.html#introduction"></a>Introduction</h2> +<h2 id="introduction"><a class="anchor" href="#introduction"></a>Introduction</h2> <div class="sectionbody"> <div class="paragraph"> -<p>Apache NiFi (Incubating) is a dataflow system based on the concepts of flow-based programming. It supports +<p>Apache NiFi is a dataflow system based on the concepts of flow-based programming. It supports powerful and scalable directed graphs of data routing, transformation, and system mediation logic. NiFi has a web-based user interface for design, control, feedback, and monitoring of dataflows. It is highly configurable along several dimensions of quality of service, such as loss-tolerant versus guaranteed delivery, low latency versus @@ -544,7 +544,7 @@ use a supported web browser to view the </div> </div> <div class="sect1"> -<h2 id="terminology"><a class="anchor" href="user-guide.html#terminology"></a>Terminology</h2> +<h2 id="terminology"><a class="anchor" href="#terminology"></a>Terminology</h2> <div class="sectionbody"> <div class="paragraph"> <p><strong>DataFlow Manager</strong>: A DataFlow Manager (DFM) is a NiFi user who has permissions to add, remove, and modify components of a NiFi dataflow.</p> @@ -627,7 +627,7 @@ use a supported web browser to view the </div> </div> <div class="sect1"> -<h2 id="User_Interface"><a class="anchor" href="user-guide.html#User_Interface"></a>NiFi User Interface</h2> +<h2 id="User_Interface"><a class="anchor" href="#User_Interface"></a>NiFi User Interface</h2> <div class="sectionbody"> <div class="paragraph"> <p>The NiFi User Interface (UI) provides mechanisms for creating automated dataflows, as well as visualizing, @@ -646,7 +646,7 @@ able to view and modify the dataflow. Fo </div> <div class="imageblock"> <div class="content"> -<img src="images/new-flow.png" alt="Empty Flow"> +<img src="./images/new-flow.png" alt="Empty Flow"> </div> </div> <div class="paragraph"> @@ -666,7 +666,7 @@ and configure system properties, such as </div> <div class="imageblock"> <div class="content"> -<img src="images/nifi-toolbar-components.png" alt="NiFi Components Toolbar"> +<img src="./images/nifi-toolbar-components.png" alt="NiFi Components Toolbar"> </div> </div> <div class="paragraph"> @@ -679,7 +679,7 @@ is a link that will take you back up to </div> <div class="imageblock"> <div class="content"> -<img src="images/nifi-navigation.png" alt="NiFi Navigation"> +<img src="./images/nifi-navigation.png" alt="NiFi Navigation"> </div> </div> <div id="status_bar" class="paragraph"> @@ -692,31 +692,31 @@ are in the cluster and how many are curr </div> <div class="imageblock"> <div class="content"> -<img src="images/status-bar.png" alt="NiFi Status Bar"> +<img src="./images/status-bar.png" alt="NiFi Status Bar"> </div> </div> </div> </div> <div class="sect1"> -<h2 id="building-a-dataflow"><a class="anchor" href="user-guide.html#building-a-dataflow"></a>Building a DataFlow</h2> +<h2 id="building-a-dataflow"><a class="anchor" href="#building-a-dataflow"></a>Building a DataFlow</h2> <div class="sectionbody"> <div class="paragraph"> <p>A DFM is able to build an automated dataflow using the NiFi User Interface (UI). Simply drag components from the toolbar to the canvas, configure the components to meet specific needs, and connect the components together.</p> </div> <div class="sect2"> -<h3 id="adding-components-to-the-canvas"><a class="anchor" href="user-guide.html#adding-components-to-the-canvas"></a>Adding Components to the Canvas</h3> +<h3 id="adding-components-to-the-canvas"><a class="anchor" href="#adding-components-to-the-canvas"></a>Adding Components to the Canvas</h3> <div class="paragraph"> <p>In the User Interface section above outlined the different segments of the UI and pointed out a Components Toolbar. This section looks at each of the Components in that toolbar:</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/components.png" alt="Components"> +<img src="./images/components.png" alt="Components"> </div> </div> <div class="paragraph"> -<p><span class="image"><img src="images/iconProcessor.png" alt="Processor" width="32"></span> +<p><span class="image"><img src="./images/iconProcessor.png" alt="Processor" width="32"></span> <strong>Processor</strong>: The Processor is the most commonly used component, as it is responsible for data ingress, egress, routing, and manipulating. There are many different types of Processors. In fact, this is a very common Extension Point in NiFi, meaning that many vendors may implement their own Processors to perform whatever functions are necessary for their use case. @@ -724,7 +724,7 @@ This section looks at each of the Compon </div> <div class="imageblock"> <div class="content"> -<img src="images/add-processor.png" alt="Add Processor Dialog"> +<img src="./images/add-processor.png" alt="Add Processor Dialog"> </div> </div> <div class="paragraph"> @@ -737,7 +737,7 @@ Processors that allow us to ingest data </div> <div class="imageblock"> <div class="content"> -<img src="images/add-processor-with-tag-cloud.png" alt="Add Processor with Tag Cloud"> +<img src="./images/add-processor-with-tag-cloud.png" alt="Add Processor with Tag Cloud"> </div> </div> <div class="paragraph"> @@ -748,7 +748,7 @@ location that it was dropped.</p> <p><strong>Note</strong>: For any component added to the graph, it is possible to select it with the mouse and move it anywhere on the graph. Also, it is possible to select multiple items at once by either holding down the Shift key and selecting each item or by holding down the Shift key and dragging a selection box around the desired components.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/iconInputPort.png" alt="Input Port" width="32"></span> +<p><span class="image"><img src="./images/iconInputPort.png" alt="Input Port" width="32"></span> <strong>Input Port</strong>: Input Ports provide a mechanism for transferring data into a Process Group. When an Input Port is dragged onto the canvas, the DFM is prompted to name the Port. All Ports within a Process Group must have unique names.</p> </div> @@ -759,7 +759,7 @@ to receive data from remote instances of appropriate users.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/iconOutputPort.png" alt="Output Port" width="32"></span> +<p><span class="image"><img src="./images/iconOutputPort.png" alt="Output Port" width="32"></span> <strong>Output Port</strong>: Output Ports provide a mechanism for transferring data from a Process Group to destinations outside of the Process Group. When an Output Port is dragged onto the canvas, the DFM is prompted to name the Port. All Ports within a Process Group must have unique names.</p> @@ -770,13 +770,13 @@ remote instances of NiFi. In this case, that data is removed from the queues of the incoming Connections.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/iconProcessGroup.png" alt="Process Group" width="32"></span> +<p><span class="image"><img src="./images/iconProcessGroup.png" alt="Process Group" width="32"></span> <strong>Process Group</strong>: Process Groups can be used to logically group a set of components so that the dataflow is easier to understand and maintain. When a Process Group is dragged onto the canvas, the DFM is prompted to name the Process Group. All Process Groups within the same parent group must have unique names. The Process Group will then be nested within that parent group.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/iconRemoteProcessGroup.png" alt="Remote Process Group" width="32"></span> +<p><span class="image"><img src="./images/iconRemoteProcessGroup.png" alt="Remote Process Group" width="32"></span> <strong>Remote Process Group</strong>: Remote Process Groups appear and behave similar to Process Groups. However, the Remote Process Group (RPG) references a remote instance of NiFi. When an RPG is dragged onto the canvas, rather than being prompted for a name, the DFM is prompted for the URL of the remote NiFi instance. If the remote NiFi is a clustered instance, the URL that should be used @@ -786,7 +786,7 @@ how busy each node is. This information then interrogated periodically to determine information about any nodes that are dropped from or added to the cluster and to recalculate the load balancing based on each node’s load.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/iconFunnel.png" alt="Funnel" width="32"></span> +<p><span class="image"><img src="./images/iconFunnel.png" alt="Funnel" width="32"></span> <strong>Funnel</strong>: Funnels are used to combine the data from many Connections into a single Connection. This has two advantages. First, if many Connections are created with the same destination, the canvas can become cluttered if those Connections have to span a large space. By funneling these Connections into a single Connection, that single Connection can then be @@ -795,14 +795,14 @@ several Connections can be funneled into one Connection, rather than prioritizing the data on each Connection independently.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/iconTemplate.png" alt="Template" width="32"></span> +<p><span class="image"><img src="./images/iconTemplate.png" alt="Template" width="32"></span> <strong>Template</strong>: Templates can be created by DFMs from sections of the flow, or they can be imported from other dataflows. These Templates provide larger building blocks for creating a complex flow quickly. When the Template is dragged onto the canvas, the DFM is provided a dialog to choose which Template to add to the canvas:</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/instantiate-template.png" alt="Instantiate Template Dialog"> +<img src="./images/instantiate-template.png" alt="Instantiate Template Dialog"> </div> </div> <div class="paragraph"> @@ -811,11 +811,11 @@ icon, indicating that there is more info </div> <div class="imageblock"> <div class="content"> -<img src="images/instantiate-template-description.png" alt="Instantiate Template Dialog"> +<img src="./images/instantiate-template-description.png" alt="Instantiate Template Dialog"> </div> </div> <div class="paragraph"> -<p><span class="image"><img src="images/iconLabel.png" alt="Label"></span> +<p><span class="image"><img src="./images/iconLabel.png" alt="Label"></span> <strong>Label</strong>: Labels are used to provide documentation to parts of a dataflow. When a Label is dropped onto the canvas, it is created with a default size. The Label can then be resized by dragging the handle in the bottom-right corner. The Label has no text when initially created. The text of the Label can be added by right-clicking on the Label and @@ -823,7 +823,7 @@ choosing <code>Configure...</code></p> </div> </div> <div class="sect2"> -<h3 id="configuring-a-processor"><a class="anchor" href="user-guide.html#configuring-a-processor"></a>Configuring a Processor</h3> +<h3 id="configuring-a-processor"><a class="anchor" href="#configuring-a-processor"></a>Configuring a Processor</h3> <div class="paragraph"> <p>Once a Processor has been dragged onto the Canvas, it is ready to configure. This is done by right-clicking on the Processor and clicking the <code>Configure...</code> option from the context menu. The configuration dialog is opened with four @@ -837,13 +837,13 @@ running. You must first stop the Process the Processor again.</p> </div> <div class="sect3"> -<h4 id="settings-tab"><a class="anchor" href="user-guide.html#settings-tab"></a>Settings Tab</h4> +<h4 id="settings-tab"><a class="anchor" href="#settings-tab"></a>Settings Tab</h4> <div class="paragraph"> <p>The first tab in the Processor Configuration dialog is the Settings tab:</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/settings-tab.png" alt="Settings Tab"> +<img src="./images/settings-tab.png" alt="Settings Tab"> </div> </div> <div class="paragraph"> @@ -890,13 +890,13 @@ auto-terminated, the auto-termination st </div> </div> <div class="sect3"> -<h4 id="scheduling-tab"><a class="anchor" href="user-guide.html#scheduling-tab"></a>Scheduling Tab</h4> +<h4 id="scheduling-tab"><a class="anchor" href="#scheduling-tab"></a>Scheduling Tab</h4> <div class="paragraph"> <p>The second tab in the Processor Configuration dialog is the Scheduling Tab:</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/scheduling-tab.png" alt="Scheduling Tab"> +<img src="./images/scheduling-tab.png" alt="Scheduling Tab"> </div> </div> <div class="paragraph"> @@ -993,20 +993,20 @@ Lower Latency or Higher Throughput.</p> </div> </div> <div class="sect3"> -<h4 id="properties-tab"><a class="anchor" href="user-guide.html#properties-tab"></a>Properties Tab</h4> +<h4 id="properties-tab"><a class="anchor" href="#properties-tab"></a>Properties Tab</h4> <div class="paragraph"> <p>The Properties Tab provides a mechanism to configure Processor-specific behavior. There are no default properties. Each type of Processor must define which Properties make sense for its use case. Below, we see the Properties Tab for a RouteOnAttribute Processor:</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/properties-tab.png" alt="Properties Tab"> +<img src="./images/properties-tab.png" alt="Properties Tab"> </div> </div> <div class="paragraph"> <p>This Processor, by default, has only a single property: ‘Routing Strategy.’ The default value is ‘Route on Property name.’ Next to the name of this property is a small question-mark symbol ( -<span class="image"><img src="images/iconInfo.png" alt="Question Mark"></span> +<span class="image"><img src="./images/iconInfo.png" alt="Question Mark"></span> ). This help symbol is seen in other places throughout the User Interface, and it indicates that more information is available. Hovering over this symbol with the mouse will provide additional details about the property and the default value, as well as historical values that have been set for the Property.</p> @@ -1017,7 +1017,7 @@ the user is either provided a drop-down </div> <div class="imageblock"> <div class="content"> -<img src="images/edit-property-dropdown.png" alt="Edit Property with Dropdown"> +<img src="./images/edit-property-dropdown.png" alt="Edit Property with Dropdown"> </div> </div> <div class="paragraph"> @@ -1027,38 +1027,38 @@ the Processor becomes invalid when User- In fact, this Processor will not be valid until the user has added a property.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/edit-property-textarea.png" alt="Edit Property with Text Area"></span></p> +<p><span class="image"><img src="./images/edit-property-textarea.png" alt="Edit Property with Text Area"></span></p> </div> <div class="paragraph"> <p>Note that after a User-Defined property has been added, an icon will appear on the right-hand side of that row ( -<span class="image"><img src="images/iconDelete.png" alt="Delete Icon"></span> +<span class="image"><img src="./images/iconDelete.png" alt="Delete Icon"></span> ). Clicking this button will remove the User-Defined property from the Processor.</p> </div> <div class="paragraph"> <p>Some processors also have an Advanced User Interface (UI) built into them. For example, the UpdateAttribute processor has an Advanced UI. To access the Advanced UI, click the <code>Advanced</code> button that appears at the bottom of the Configure Processor window. Only processors that have an Advanced UI will have this button.</p> </div> <div class="paragraph"> -<p>Some processors have properties that refer to other components, such as Controller Services, which also need to be configured. For example, the GetHTTP processor has an SSLContextService property, which refers to the StandardSSLContextService controller service. When DFMs want to configure this property but have not yet created and configured the controller service, they have the option to create the service on the spot, as depicted in the image below. For more information about configuring Controller Services, see the <a href="user-guide.html#Controller_Services_and_Reporting_Tasks">Controller Services and Reporting Tasks</a> section.</p> +<p>Some processors have properties that refer to other components, such as Controller Services, which also need to be configured. For example, the GetHTTP processor has an SSLContextService property, which refers to the StandardSSLContextService controller service. When DFMs want to configure this property but have not yet created and configured the controller service, they have the option to create the service on the spot, as depicted in the image below. For more information about configuring Controller Services, see the <a href="#Controller_Services_and_Reporting_Tasks">Controller Services and Reporting Tasks</a> section.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/create-service-ssl-context.png" alt="Create Service" width="700"></span></p> +<p><span class="image"><img src="./images/create-service-ssl-context.png" alt="Create Service" width="700"></span></p> </div> </div> <div class="sect3"> -<h4 id="comments-tab"><a class="anchor" href="user-guide.html#comments-tab"></a>Comments Tab</h4> +<h4 id="comments-tab"><a class="anchor" href="#comments-tab"></a>Comments Tab</h4> <div class="paragraph"> <p>The last tab in the Processor configuration dialog is the Comments tab. This tab simply provides an area for users to include whatever comments are appropriate for this component. Use of the Comments tab is optional:</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/comments-tab.png" alt="Comments Tab"> +<img src="./images/comments-tab.png" alt="Comments Tab"> </div> </div> </div> </div> <div class="sect2"> -<h3 id="additional-help"><a class="anchor" href="user-guide.html#additional-help"></a>Additional Help</h3> +<h3 id="additional-help"><a class="anchor" href="#additional-help"></a>Additional Help</h3> <div class="paragraph"> <p>The user may access additional documentation about each Processor’s usage by right-clicking on the Processor and then selecting ‘Usage’ from the context menu. Alternatively, clicking the ‘Help’ link in the top-right @@ -1067,12 +1067,12 @@ for all the Processors that are availabl </div> </div> <div class="sect2"> -<h3 id="Controller_Services_and_Reporting_Tasks"><a class="anchor" href="user-guide.html#Controller_Services_and_Reporting_Tasks"></a>Controller Services and Reporting Tasks</h3> +<h3 id="Controller_Services_and_Reporting_Tasks"><a class="anchor" href="#Controller_Services_and_Reporting_Tasks"></a>Controller Services and Reporting Tasks</h3> <div class="paragraph"> <p>While DFMs have the ability to create Controller Services from the Configure Processor window, there is also a central place within the User Interface for adding and configuring both Controller Services and Reporting Tasks. To get there, click on the Controller Settings button in the Management section of the toolbar.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/controller-settings-button.png" alt="Controller Settings Button" width="200"></span></p> +<p><span class="image"><img src="./images/controller-settings-button.png" alt="Controller Settings Button" width="200"></span></p> </div> <div class="paragraph"> <p>The Controller Settings window has three tabs across the top: General, Controller Services, and Reporting Tasks. The General tab is for settings that pertain to general information about the NiFi instance. For example, here, the DFM can provide a unique name for the overall dataflow, as well as comments that describe the flow. Be aware that this information is visible to any other NiFi instance that connects remotely to this instance (using Remote Process Groups, a.k.a., Site-to-Site).</p> @@ -1081,37 +1081,37 @@ for all the Processors that are availabl <p>The General tab also provides settings for the overall maximum thread counts of the instance, as well as the ability to click "Back-up flow" to create a backup copy of the current flow, which is saved by default in the /conf/archive directory.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/settings-general-tab.png" alt="Controller Settings General Tab" width="700"></span></p> +<p><span class="image"><img src="./images/settings-general-tab.png" alt="Controller Settings General Tab" width="700"></span></p> </div> <div class="paragraph"> <p>To the right of the General tab is the Controller Services tab. From this tab, the DFM may click the "+" button in the upper-right corner to create a new Controller Service.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/controller-services-tab.png" alt="Controller Services Tab" width="900"></span></p> +<p><span class="image"><img src="./images/controller-services-tab.png" alt="Controller Services Tab" width="900"></span></p> </div> <div class="paragraph"> <p>The Add Controller Service window opens. This window is similar to the Add Processor window. It provides a list of the available Controller Services on the right and a tag cloud, showing the most common catagory tags used for Controller Services, on the left. The DFM may click any tag in the tag cloud in order to narrow down the list of Controller Services to those that fit the categories desired. The DFM may also use the Filter field at the top of the window to search for the desired Contoller Service. Upon selecting a Controller Service from the list, the DFM can see a description of the the service below. Select the desired controller service and click Add, or simply double-click the name of the service to add it.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/add-controller-service-window.png" alt="Add Controller Service Window" width="700"></span></p> +<p><span class="image"><img src="./images/add-controller-service-window.png" alt="Add Controller Service Window" width="700"></span></p> </div> <div class="paragraph"> <p>Once a Controller Service has been added, the DFM may configure it by clicking the Edit button (pencil icon) in the far-right column. Other buttons in this column include the Enable button (to enable a configured service), the Remove button, and the Usage button, which links to the documentation for the particular Controller Service.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/controller-services-edit-buttons.png" alt="Controller Services Buttons"></span></p> +<p><span class="image"><img src="./images/controller-services-edit-buttons.png" alt="Controller Services Buttons"></span></p> </div> <div class="paragraph"> <p>When the DFM clicks the Edit button, a Configure Controller Service window opens. It has three tabs: Settings, Properties, and Comments. This window is similar to the Configure Processor window. The Settings tab provides a place for the DFM to give the Controller Service a unique name (if desired). It also lists the UUID for the service and provides a list of other components (processors or other controller services) that reference the service.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/configure-controller-service-settings.png" alt="Configure Controller Service Settings" width="700"></span></p> +<p><span class="image"><img src="./images/configure-controller-service-settings.png" alt="Configure Controller Service Settings" width="700"></span></p> </div> <div class="paragraph"> <p>The Properties tab lists the various properties that apply to the particular controller service. As with configuring processors, the DFM may hover the mouse over the question mark icons to see more information about each property.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/configure-controller-service-properties.png" alt="Configure Controller Service Properties" width="700"></span></p> +<p><span class="image"><img src="./images/configure-controller-service-properties.png" alt="Configure Controller Service Properties" width="700"></span></p> </div> <div class="paragraph"> <p>The Comments tab is just an open-text field, where the DFM may include comments about the service. After configuring a Controller Service, click the Apply button to apply the configuration and close the window, or click the Cancel button to cancel the changes and close the window.</p> @@ -1123,25 +1123,25 @@ for all the Processors that are availabl <p>The Reporting Tasks tab behaves similarly to the Controller Services tab. The DFM has the option to add Reporting Tasks and configure them in the same way as Controller Services.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/reporting-tasks-tab.png" alt="Reporting Tasks Tab" width="900"></span></p> +<p><span class="image"><img src="./images/reporting-tasks-tab.png" alt="Reporting Tasks Tab" width="900"></span></p> </div> <div class="paragraph"> <p>Once a Reporting Task has been added, the DFM may configure it by clicking the Edit (pencil icon) in the far-right column. Other buttons in this column include the Start button, Remove button, and Usage button, which links to the documentation for the particular Reporting Task.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/reporting-tasks-edit-buttons2.png" alt="Reporting Tasks Buttons"></span></p> +<p><span class="image"><img src="./images/reporting-tasks-edit-buttons2.png" alt="Reporting Tasks Buttons"></span></p> </div> <div class="paragraph"> <p>When the DFM clicks the Edit button, a Configure Reporting Task window opens. It has three tabs: Settings, Properties, and Comments. This window is also similar to the Configure Processor window. The Settings tab provides a place for the DFM to give the Reporting Task a unique name (if desired). It also lists a UUID for the Reporting Task and provides settings for the task’s Scheduling Strategy and Run Schedule (similar to the same settings in a processor). The DFM may hover the mouse over the question mark icons to see more information about each setting.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/configure-reporting-task-settings.png" alt="Configure Reporting Task Settings" width="700"></span></p> +<p><span class="image"><img src="./images/configure-reporting-task-settings.png" alt="Configure Reporting Task Settings" width="700"></span></p> </div> <div class="paragraph"> <p>The Properties tab for a Reporting Task lists the properties that may be configured for the task. The DFM may hover the mouse over the question mark icons to see more information about each property.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/configure-reporting-task-properties.png" alt="Configure Reporting Task Properties" width="700"></span></p> +<p><span class="image"><img src="./images/configure-reporting-task-properties.png" alt="Configure Reporting Task Properties" width="700"></span></p> </div> <div class="paragraph"> <p>The Comments tab is just an open-text field, where the DFM may include comments about the task. After configuring the Reporting Task, click the Apply button to apply the configuration and close the window, or click Cancel to cancel the changes and close the window.</p> @@ -1151,16 +1151,16 @@ for all the Processors that are availabl </div> </div> <div class="sect2"> -<h3 id="connecting-components"><a class="anchor" href="user-guide.html#connecting-components"></a>Connecting Components</h3> +<h3 id="connecting-components"><a class="anchor" href="#connecting-components"></a>Connecting Components</h3> <div class="paragraph"> <p>Once processors and other components have been added to the graph and configured, the next step is to connect them to one another so that NiFi knows what to do with each FlowFile after it has been processed. This is accomplished by creating a Connection between each component. When the user hovers the mouse over the center of a component, a new Connection icon ( -<span class="image"><img src="images/addConnect.png" alt="Connection Bubble"></span> +<span class="image"><img src="./images/addConnect.png" alt="Connection Bubble"></span> ) appears:</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/processor-connection-bubble.png" alt="Processor with Connection Bubble"></span></p> +<p><span class="image"><img src="./images/processor-connection-bubble.png" alt="Processor with Connection Bubble"></span></p> </div> <div class="paragraph"> <p>The user drags the Connection bubble from one component to another until the second component is highlighted. When the user @@ -1170,14 +1170,14 @@ useful if the DFM wants the processor to connection, simply drag the connection bubble away and then back to the same processor until it is highlighted. Then release the mouse and the same <em>Create Connection</em> dialog appears.</p> </div> <div class="sect3"> -<h4 id="details-tab"><a class="anchor" href="user-guide.html#details-tab"></a>Details Tab</h4> +<h4 id="details-tab"><a class="anchor" href="#details-tab"></a>Details Tab</h4> <div class="paragraph"> <p>The Details Tab of the <em>Create Connection</em> dialog provides information about the source and destination components, including the component name, the component type, and the Process Group in which the component lives:</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/create-connection.png" alt="Create Connection"> +<img src="./images/create-connection.png" alt="Create Connection"> </div> </div> <div class="paragraph"> @@ -1190,13 +1190,13 @@ automatically be ‘cloned’, a </div> </div> <div class="sect3"> -<h4 id="settings"><a class="anchor" href="user-guide.html#settings"></a>Settings</h4> +<h4 id="settings"><a class="anchor" href="#settings"></a>Settings</h4> <div class="paragraph"> <p>The Settings Tab provides the ability to configure the Connection’s name, FlowFile expiration, Back Pressure thresholds, and Prioritization:</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/connection-settings.png" alt="Connection Settings"></span></p> +<p><span class="image"><img src="./images/connection-settings.png" alt="Connection Settings"></span></p> </div> <div class="paragraph"> <p>The Connection name is optional. If not specified, the name shown for the Connection will be names of the Relationships @@ -1252,7 +1252,7 @@ prioritizers’ list to the ‘A </div> </div> <div class="sect2"> -<h3 id="processor-validation"><a class="anchor" href="user-guide.html#processor-validation"></a>Processor Validation</h3> +<h3 id="processor-validation"><a class="anchor" href="#processor-validation"></a>Processor Validation</h3> <div class="paragraph"> <p>Before trying to start a Processor, it’s important to make sure that the Processor’s configuration is valid. A status indicator is shown in the top-left of the Processor. If the Processor is invalid, the indicator @@ -1260,7 +1260,7 @@ will show a yellow Warning indicator wit </div> <div class="imageblock"> <div class="content"> -<img src="images/invalid-processor.png" alt="Invalid Processor"> +<img src="./images/invalid-processor.png" alt="Invalid Processor"> </div> </div> <div class="paragraph"> @@ -1270,12 +1270,12 @@ to a Stop icon, indicating that the Proc </div> <div class="imageblock"> <div class="content"> -<img src="images/valid-processor.png" alt="Valid Processor"> +<img src="./images/valid-processor.png" alt="Valid Processor"> </div> </div> </div> <div class="sect2"> -<h3 id="example-dataflow"><a class="anchor" href="user-guide.html#example-dataflow"></a>Example Dataflow</h3> +<h3 id="example-dataflow"><a class="anchor" href="#example-dataflow"></a>Example Dataflow</h3> <div class="paragraph"> <p>This section has described the steps required to build a dataflow. Now, to put it all together. The following example dataflow consists of just two processors: GenerateFlowFile and LogAttribute. These processors are normally used for testing, but they can also be used @@ -1307,7 +1307,7 @@ to build a quick flow for demonstration <p>On the Settings tab, under Auto-terminate relationships, select the checkbox next to Success. This will terminate FlowFiles after this processor has successfully processed them.</p> </li> <li> -<p>Also on the Settings tab, set the Bulletin level to Info. This way, when the dataflow is running, this processor will display the bulletin icon (see <a href="user-guide.html#processor_anatomy">Anatomy of a Processor</a>), and the user may hover over it with the mouse to see the attributes that the processor is logging.</p> +<p>Also on the Settings tab, set the Bulletin level to Info. This way, when the dataflow is running, this processor will display the bulletin icon (see <a href="#processor_anatomy">Anatomy of a Processor</a>), and the user may hover over it with the mouse to see the attributes that the processor is logging.</p> </li> </ul> </div> @@ -1319,17 +1319,17 @@ to build a quick flow for demonstration </div> <div class="imageblock"> <div class="content"> -<img src="images/simple-flow.png" alt="Simple Flow" width="900"> +<img src="./images/simple-flow.png" alt="Simple Flow" width="900"> </div> </div> <div class="paragraph"> -<p>Now see the following section on how to start and stop the dataflow. When the dataflow is running, be sure to note the statistical information that is displayed on the face of each processor (see <a href="user-guide.html#processor_anatomy">Anatomy of a Processor</a>).</p> +<p>Now see the following section on how to start and stop the dataflow. When the dataflow is running, be sure to note the statistical information that is displayed on the face of each processor (see <a href="#processor_anatomy">Anatomy of a Processor</a>).</p> </div> </div> </div> </div> <div class="sect1"> -<h2 id="command-and-control-of-dataflow"><a class="anchor" href="user-guide.html#command-and-control-of-dataflow"></a>Command and Control of DataFlow</h2> +<h2 id="command-and-control-of-dataflow"><a class="anchor" href="#command-and-control-of-dataflow"></a>Command and Control of DataFlow</h2> <div class="sectionbody"> <div class="paragraph"> <p>When a component is added to the NiFi canvas, it is in the Stopped state. In order to cause the component to @@ -1337,7 +1337,7 @@ be triggered, the component must be star Stopped state, the component can be configured, started, or disabled.</p> </div> <div class="sect2"> -<h3 id="starting-a-component"><a class="anchor" href="user-guide.html#starting-a-component"></a>Starting a Component</h3> +<h3 id="starting-a-component"><a class="anchor" href="#starting-a-component"></a>Starting a Component</h3> <div class="paragraph"> <p>In order to start a component, the following conditions must be met:</p> </div> @@ -1357,13 +1357,13 @@ Stopped state, the component can be conf </li> <li> <p>The component must have no active tasks. For more information about active tasks, see the “Anatomy of …​” -sections under <a href="user-guide.html#monitoring">Monitoring of DataFlow</a> (<a href="user-guide.html#processor_anatomy">Anatomy of a Processor</a>, <a href="user-guide.html#process_group_anatomy">Anatomy of a Process Group</a>, <a href="user-guide.html#remote_group_anatomy">Anatomy of a Remote Process Group</a>).</p> +sections under <a href="#monitoring">Monitoring of DataFlow</a> (<a href="#processor_anatomy">Anatomy of a Processor</a>, <a href="#process_group_anatomy">Anatomy of a Process Group</a>, <a href="#remote_group_anatomy">Anatomy of a Remote Process Group</a>).</p> </li> </ul> </div> <div class="paragraph"> <p>Components can be started by selecting all of the components to start and then clicking the Start icon ( -<span class="image"><img src="images/iconRun.png" alt="Start"></span> +<span class="image"><img src="./images/iconRun.png" alt="Start"></span> ) in the Actions Toolbar or by right-clicking a single component and choosing Start from the context menu.</p> </div> @@ -1373,16 +1373,16 @@ be started, with the exception of those </div> <div class="paragraph"> <p>Once started, the status indicator of a Processor will change to a Play symbol ( -<span class="image"><img src="images/iconRun.png" alt="Run"></span> +<span class="image"><img src="./images/iconRun.png" alt="Run"></span> ).</p> </div> </div> <div class="sect2"> -<h3 id="stopping-a-component"><a class="anchor" href="user-guide.html#stopping-a-component"></a>Stopping a Component</h3> +<h3 id="stopping-a-component"><a class="anchor" href="#stopping-a-component"></a>Stopping a Component</h3> <div class="paragraph"> <p>A component can be stopped any time that it is running. A component is stopped by right-clicking on the component and clicking Stop from the context menu, or by selecting the component and clicking the Stop icon ( -<span class="image"><img src="images/iconStop.png" alt="Stop"></span> +<span class="image"><img src="./images/iconStop.png" alt="Stop"></span> ) in the Actions Toolbar.</p> </div> <div class="paragraph"> @@ -1391,17 +1391,17 @@ will be stopped.</p> </div> <div class="paragraph"> <p>Once stopped, the status indicator of a component will change to the Stop symbol ( -<span class="image"><img src="images/iconStop.png" alt="Stop"></span> +<span class="image"><img src="./images/iconStop.png" alt="Stop"></span> ).</p> </div> <div class="paragraph"> <p>Stopping a component does not interrupt its currently running tasks. Rather, it stops scheduling new tasks to -be performed. The number of active tasks is shown in the top-right corner of the Processor (see <a href="user-guide.html#processor_anatomy">Anatomy of a Processor</a> +be performed. The number of active tasks is shown in the top-right corner of the Processor (see <a href="#processor_anatomy">Anatomy of a Processor</a> for more information).</p> </div> </div> <div class="sect2"> -<h3 id="enabling-disabling-a-component"><a class="anchor" href="user-guide.html#enabling-disabling-a-component"></a>Enabling/Disabling a Component</h3> +<h3 id="enabling-disabling-a-component"><a class="anchor" href="#enabling-disabling-a-component"></a>Enabling/Disabling a Component</h3> <div class="paragraph"> <p>When a component is enabled, it is able to be started. Users may choose to disable components when they are part of a dataflow that is still being assembled, for example. Typically, if a component is not intended to be run, the component @@ -1412,21 +1412,21 @@ configuration) and inadvertently were ne <div class="paragraph"> <p>When it is desirable to re-enable a component, it can be enabled by selecting the component and clicking the Enable icon ( -<span class="image"><img src="images/iconEnable.png" alt="Enable"></span> +<span class="image"><img src="./images/iconEnable.png" alt="Enable"></span> ) in the Actions Toolbar. This is available only when the selected component or components are disabled. Alternatively, a component can be enabled by checking the checkbox next to the “Enabled” option in the Settings tab of the Processor configuration dialog or the configuration dialog for a Port.</p> </div> <div class="paragraph"> <p>Once enabled, the component’s status indicator will change to either Invalid ( -<span class="image"><img src="images/iconAlert.png" alt="Invalid"></span> +<span class="image"><img src="./images/iconAlert.png" alt="Invalid"></span> ) or Stopped ( -<span class="image"><img src="images/iconStop.png" alt="Stopped"></span> +<span class="image"><img src="./images/iconStop.png" alt="Stopped"></span> ), depending on whether or not the component is valid.</p> </div> <div class="paragraph"> <p>A component is then disabled by selecting the component and clicking the Disable icon ( -<span class="image"><img src="images/iconDisable.png" alt="Disable"></span> +<span class="image"><img src="./images/iconDisable.png" alt="Disable"></span> ) in the Actions Toolbar, or by clearing the checkbox next to the “Enabled” option in the Settings tab of the Processor configuration dialog or the configuration dialog for a Port.</p> </div> @@ -1435,26 +1435,26 @@ of the Processor configuration dialog or </div> </div> <div class="sect2"> -<h3 id="Remote_Group_Transmission"><a class="anchor" href="user-guide.html#Remote_Group_Transmission"></a>Remote Process Group Transmission</h3> +<h3 id="Remote_Group_Transmission"><a class="anchor" href="#Remote_Group_Transmission"></a>Remote Process Group Transmission</h3> <div class="paragraph"> <p>Remote Process Groups provide a mechanism for sending data to or retrieving data from a remote instance of NiFi. When a Remote Process Group (RPG) is added to the canvas, it is added with the Transmision Disabled, as indicated by the icon ( -<span class="image"><img src="images/iconTransmissionInactive.png" alt="Transmission Disabled"></span> +<span class="image"><img src="./images/iconTransmissionInactive.png" alt="Transmission Disabled"></span> ) in the top-left corner. When Transmission is Disabled, it can be enabled by right-clicking on the RPG and clicking the “Enable Transmission” menu item. This will cause all ports for which there is a Connection to begin transmitting data. This will cause the status indicator to then change to the Transmission Enabled icon ( -<span class="image"><img src="images/iconTransmissionActive.png" alt="Transmission Enabled"></span> +<span class="image"><img src="./images/iconTransmissionActive.png" alt="Transmission Enabled"></span> ).</p> </div> <div class="paragraph"> <p>If there are problems communicating with the Remote Process Group, a Warning indicator ( -<span class="image"><img src="images/iconAlert.png" alt="Warning"></span> +<span class="image"><img src="./images/iconAlert.png" alt="Warning"></span> ) may instead be present in the top-left corner. Hovering over this Warning indicator with the mouse will provide more information about the problem.</p> </div> <div class="sect3"> -<h4 id="Remote_Port_Configuration"><a class="anchor" href="user-guide.html#Remote_Port_Configuration"></a>Individual Port Transmission</h4> +<h4 id="Remote_Port_Configuration"><a class="anchor" href="#Remote_Port_Configuration"></a>Individual Port Transmission</h4> <div class="paragraph"> <p>There are times when the DFM may want to either enable or disable transmission for only a specific Port within the Remote Process Group. This can be accomplished by right-clicking on the Remote Process Group @@ -1463,7 +1463,7 @@ configured:</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/remote-group-ports-dialog.png" alt="Remote Process Groups"> +<img src="./images/remote-group-ports-dialog.png" alt="Remote Process Groups"> </div> </div> <div class="paragraph"> @@ -1478,7 +1478,7 @@ be shown.</p> permissions and that the Remote Process Group’s flow is current. This can be checked by closing the Port Configuration Dialog and looking at the bottom-right corner of the Remote Process Group. The date at which the flow was last refreshed is shown. If the flow appears to be outdated, it can be updated by right-clicking -on the Remote Process Group and selecting “Refresh flow.” (See <a href="user-guide.html#remote_group_anatomy">Anatomy of a Remote Process Group</a> for more information).</p> +on the Remote Process Group and selecting “Refresh flow.” (See <a href="#remote_group_anatomy">Anatomy of a Remote Process Group</a> for more information).</p> </div> <div class="paragraph"> <p>Each Port is shown with the Port name, followed by its description, currently configured number of Concurrent @@ -1487,14 +1487,14 @@ to turn the Port on or off. Those Ports </div> <div class="imageblock"> <div class="content"> -<img src="images/remote-port-connection-status.png" alt="Remote Port Statuses"> +<img src="./images/remote-port-connection-status.png" alt="Remote Port Statuses"> </div> </div> <div class="paragraph"> <p>The on/off switch provides a mechanism to enable and disable transmission for each Port in the Remote Process Group independently. Those Ports that are connected but are not currently transmitting can be configured by clicking the pencil icon ( -<span class="image"><img src="images/iconEdit.png" alt="Edit"></span> +<span class="image"><img src="./images/iconEdit.png" alt="Edit"></span> ) below the on/off switch. Clicking this icon will allow the DFM to change the number of Concurrent tasks and whether or not compression should be used when transmitting data to or from this Port.</p> </div> @@ -1503,21 +1503,21 @@ or not compression should be used when t </div> </div> <div class="sect1"> -<h2 id="navigating"><a class="anchor" href="user-guide.html#navigating"></a>Navigating within a DataFlow</h2> +<h2 id="navigating"><a class="anchor" href="#navigating"></a>Navigating within a DataFlow</h2> <div class="sectionbody"> <div class="paragraph"> -<p>NiFi provides various mechanisms for getting around a dataflow. The <a href="user-guide.html#User_Interface">NiFi User Interface</a> section discussed various ways to navigate around -the NiFi graph; however, once a flow exists on the graph, there are additional ways to get from one component to another. The <a href="user-guide.html#User Interface">[User Interface]</a> section showed that when multiple Process Groups exist in a flow, breadcrumbs appear under the toolbar, providing a way to navigate between them. In addition, to enter a Process Group that is currently visible on the graph, simply double-click it, thereby "drilling down" into it. Connections also provide a way to jump from one location to another within the flow. Right-click on a connection and select "Go to source" or "Go to destination" in order to jump to one end of the connection or another. This can be very useful in large, complex dataflows, where the connection lines may be long and span large areas of the graph. Finally, all components provide the ability to jump forward or backward within the flow. Right-click any component (e.g., a processor, process group, port, etc.) and select either " Upstream connections" or "Downstream connections". A dialog window will open, showing the available upstream or downstream connections that the user may jump to. This can be especially useful when trying to follow a dataflow in a backward direction. It is typically easy to follow the path of a dataflow from start to finish, drilling down into nested process groups; however, it can be more difficult to follow the dataflow in the other direction.</p> +<p>NiFi provides various mechanisms for getting around a dataflow. The <a href="#User_Interface">NiFi User Interface</a> section discussed various ways to navigate around +the NiFi graph; however, once a flow exists on the graph, there are additional ways to get from one component to another. The <a href="#User Interface">[User Interface]</a> section showed that when multiple Process Groups exist in a flow, breadcrumbs appear under the toolbar, providing a way to navigate between them. In addition, to enter a Process Group that is currently visible on the graph, simply double-click it, thereby "drilling down" into it. Connections also provide a way to jump from one location to another within the flow. Right-click on a connection and select "Go to source" or "Go to destination" in order to jump to one end of the connection or another. This can be very useful in large, complex dataflows, where the connection lines may be long and span large areas of the graph. Finally, all components provide the ability to jump forward or backward within the flow. Right-click any component (e.g., a processor, process group, port, etc.) and select either "Upstream connec tions" or "Downstream connections". A dialog window will open, showing the available upstream or downstream connections that the user may jump to. This can be especially useful when trying to follow a dataflow in a backward direction. It is typically easy to follow the path of a dataflow from start to finish, drilling down into nested process groups; however, it can be more difficult to follow the dataflow in the other direction.</p> </div> </div> </div> <div class="sect1"> -<h2 id="monitoring"><a class="anchor" href="user-guide.html#monitoring"></a>Monitoring of DataFlow</h2> +<h2 id="monitoring"><a class="anchor" href="#monitoring"></a>Monitoring of DataFlow</h2> <div class="sectionbody"> <div class="paragraph"> <p>NiFi provides a great deal of information about the status of the DataFlow in order to monitor the health and status. The Status bar provides information about the overall system health -(See <a href="user-guide.html#status_bar">[status_bar]</a> above for more information). Processors, Process Groups, and Remote Process Groups +(See <a href="#status_bar">[status_bar]</a> above for more information). Processors, Process Groups, and Remote Process Groups provide fine-grained details about their operations. Connections and Process Groups provide information about the amount of data in their queues. The Summary Page provides information about all of the components on the graph in a tabular format and also provides System Diagnostics information that includes disk usage, @@ -1526,13 +1526,13 @@ information is available per-node or as monitoring artifacts below.</p> </div> <div class="sect2"> -<h3 id="processor_anatomy"><a class="anchor" href="user-guide.html#processor_anatomy"></a>Anatomy of a Processor</h3> +<h3 id="processor_anatomy"><a class="anchor" href="#processor_anatomy"></a>Anatomy of a Processor</h3> <div class="paragraph"> <p>NiFi provides a significant amount of information about each Processor on the canvas. The following diagram shows the anatomy of a Processor:</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/processor-anatomy.png" alt="Anatomy of a Processor"></span></p> +<p><span class="image"><img src="./images/processor-anatomy.png" alt="Anatomy of a Processor"></span></p> </div> <div class="paragraph"> <p>The image outlines the following elements:</p> @@ -1560,20 +1560,20 @@ it will also show the Node that emitted <div class="ulist"> <ul> <li> -<p><span class="image"><img src="images/iconRun.png" alt="Running"></span> +<p><span class="image"><img src="./images/iconRun.png" alt="Running"></span> <strong>Running</strong>: The Processor is currently running.</p> </li> <li> -<p><span class="image"><img src="images/iconStop.png" alt="Stopped"></span> +<p><span class="image"><img src="./images/iconStop.png" alt="Stopped"></span> <strong>Stopped</strong>: The Processor is valid and enabled but is not running.</p> </li> <li> -<p><span class="image"><img src="images/iconAlert.png" alt="Invalid"></span> +<p><span class="image"><img src="./images/iconAlert.png" alt="Invalid"></span> <strong>Invalid</strong>: The Processor is enabled but is not currently valid and cannot be started. Hovering over this icon will provide a tooltip indicating why the Processor is not valid.</p> </li> <li> -<p><span class="image"><img src="images/iconDisable.png" alt="Disabled"></span> +<p><span class="image"><img src="./images/iconDisable.png" alt="Disabled"></span> <strong>Disabled</strong>: The Processor is not running and cannot be started until it has been enabled. This status does not indicate whether or not the Processor is valid.</p> </li> @@ -1641,7 +1641,7 @@ time it would have taken to perform the </div> </div> <div class="sect2"> -<h3 id="process_group_anatomy"><a class="anchor" href="user-guide.html#process_group_anatomy"></a>Anatomy of a Process Group</h3> +<h3 id="process_group_anatomy"><a class="anchor" href="#process_group_anatomy"></a>Anatomy of a Process Group</h3> <div class="paragraph"> <p>The Process Group provides a mechanism for grouping components together into a logical construct in order to organize the DataFlow in a way that makes it more understandable from a higher level. @@ -1649,7 +1649,7 @@ The following image highlights the diffe </div> <div class="imageblock"> <div class="content"> -<img src="images/process-group-anatomy.png" alt="Anatomy of a Process Group"> +<img src="./images/process-group-anatomy.png" alt="Anatomy of a Process Group"> </div> </div> <div class="paragraph"> @@ -1717,42 +1717,42 @@ within the Process Group. The following <div class="ulist"> <ul> <li> -<p><span class="image"><img src="images/iconInputPortSmall.png" alt="Input Port" width="16"></span> +<p><span class="image"><img src="./images/iconInputPortSmall.png" alt="Input Port" width="16"></span> <strong>Input Ports</strong>: The number of Input Ports that exist directly within this Process Group. This does not include any Input Ports that exist within child Process Groups, as child groups' ports cannot be accessed directly.</p> </li> <li> -<p><span class="image"><img src="images/iconOutputPortSmall.png" alt="Output Port"></span> +<p><span class="image"><img src="./images/iconOutputPortSmall.png" alt="Output Port"></span> <strong>Output Ports</strong>: The number of Output Ports that exist directly within this Process Group. This does not include any Output Ports that exist within child Process Group as child groups' ports cannot be accessed directly.</p> </li> <li> -<p><span class="image"><img src="images/iconTransmissionActive.png" alt="Transmission Active"></span> +<p><span class="image"><img src="./images/iconTransmissionActive.png" alt="Transmission Active"></span> <strong>Transmitting Ports</strong>: The number of Remote Process Group Ports that currently are configured to transmit data to remote instances of NiFi or pull data from remote instances of NiFi.</p> </li> <li> -<p><span class="image"><img src="images/iconTransmissionInactive.png" alt="Transmission Inactive"></span> +<p><span class="image"><img src="./images/iconTransmissionInactive.png" alt="Transmission Inactive"></span> <strong>Non-Transmitting Ports</strong>: The number of Remote Process Group Ports that are currently connected to components within this Process Group but currently have their transmission disabled.</p> </li> <li> -<p><span class="image"><img src="images/iconRun.png" alt="Running"></span> +<p><span class="image"><img src="./images/iconRun.png" alt="Running"></span> <strong>Running Components</strong>: The number of Processors, Input Ports, and Output Ports that are currently running within this Process Group.</p> </li> <li> -<p><span class="image"><img src="images/iconStop.png" alt="Stopped Components"></span> +<p><span class="image"><img src="./images/iconStop.png" alt="Stopped Components"></span> <strong>Stopped Components</strong>: The number of Processors, Input Ports, and Output Ports that are currently not running but are valid and enabled. These components are ready to be started.</p> </li> <li> -<p><span class="image"><img src="images/iconAlert.png" alt="Invalid Components"></span> +<p><span class="image"><img src="./images/iconAlert.png" alt="Invalid Components"></span> <strong>Invalid Components</strong>: The number of Processors, Input Ports, and Output Ports that are enabled but are currently not in a valid state. This may be due to misconfigured properties or missing Relationships.</p> </li> <li> -<p><span class="image"><img src="images/iconDisable.png" alt="Disabled Components"></span> +<p><span class="image"><img src="./images/iconDisable.png" alt="Disabled Components"></span> <strong>Disabled Components</strong>: The number of Processors, Input Ports, and Output Ports that are currently disabled. These components may or may not be valid. If the Process Group is started, these components will not cause any errors but will not be started.</p> @@ -1764,7 +1764,7 @@ within the Process Group. The following </div> </div> <div class="sect2"> -<h3 id="remote_group_anatomy"><a class="anchor" href="user-guide.html#remote_group_anatomy"></a>Anatomy of a Remote Process Group</h3> +<h3 id="remote_group_anatomy"><a class="anchor" href="#remote_group_anatomy"></a>Anatomy of a Remote Process Group</h3> <div class="paragraph"> <p>When creating a DataFlow, it is often necessary to transfer data from one instance of NiFi to another. In this case, the remote instance of NiFi can be thought of as a Process Group. For this reason, NiFi @@ -1776,7 +1776,7 @@ instance.</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/remote-group-anatomy.png" alt="Anatomy of a Remote Process Group"> +<img src="./images/remote-group-anatomy.png" alt="Anatomy of a Remote Process Group"> </div> </div> <div class="paragraph"> @@ -1789,10 +1789,10 @@ explanation of the icons and details abo <p><strong>Transmission Status</strong>: The Transmission Status indicates whether or not data Transmission between this instance of NiFi and the remote instance is currently enabled. The icon shown will be the Transmission Enabled icon ( -<span class="image"><img src="images/iconTransmissionActive.png" alt="Transmission Active"></span> +<span class="image"><img src="./images/iconTransmissionActive.png" alt="Transmission Active"></span> ) if any of the Input Ports or Output Ports is currently configured to transmit or the Transmission Disabled icon ( -<span class="image"><img src="images/iconTransmissionInactive.png" alt="Transmission Inactive"></span> +<span class="image"><img src="./images/iconTransmissionInactive.png" alt="Transmission Inactive"></span> ) if all of the Input Ports and Output Ports that are currently connected are stopped.</p> </li> <li> @@ -1808,9 +1808,9 @@ This URL is entered when the Remote Proc <p><strong>Secure Indicator</strong>: This icon indicates whether or not communications with the remote NiFi instance are secure. If communications with the remote instance are secure, this will be indicated by the “locked” icon ( -<span class="image"><img src="images/iconSecure.png" alt="Secure"></span> +<span class="image"><img src="./images/iconSecure.png" alt="Secure"></span> ). If the communications are not secure, this will be indicated by the “unlocked” icon ( -<span class="image"><img src="images/iconNotSecure.png" alt="Not Secure"></span> +<span class="image"><img src="./images/iconNotSecure.png" alt="Not Secure"></span> ). If the communications are secure, this instance of NiFi will not be able to communicate with the remote instance until an administrator for the remote instance grants access. Whenever the Remote Process Group is added to the canvas, this will automatically initiate a request to have a user for this instance of NiFi created on the @@ -1824,22 +1824,22 @@ This URL is entered when the Remote Proc <div class="ulist"> <ul> <li> -<p><span class="image"><img src="images/iconInputPortSmall.png" alt="Input Ports"></span> +<p><span class="image"><img src="./images/iconInputPortSmall.png" alt="Input Ports"></span> <strong>Input Ports</strong>: The number of Input Ports that are available to send data to on the remote instance of NiFi. If the remote instance is secure, only the ports to which this instance of NiFi has been granted access will be counted.</p> </li> <li> -<p><span class="image"><img src="images/iconTransmissionActive.png" alt="Transmitting"></span> +<p><span class="image"><img src="./images/iconTransmissionActive.png" alt="Transmitting"></span> <strong>Transmitting Ports</strong>: The number of Input Ports to which this NiFi is connected and currently configured to send data to. Ports can be turned on and off by enabling and disabling transmission on the Remote Process - Group (see <a href="user-guide.html#Remote_Group_Transmission">Remote Process Group Transmission</a>) or via the <a href="user-guide.html#Remote_Port_Configuration">Individual Port Transmission</a> dialog.</p> + Group (see <a href="#Remote_Group_Transmission">Remote Process Group Transmission</a>) or via the <a href="#Remote_Port_Configuration">Individual Port Transmission</a> dialog.</p> </li> <li> -<p><span class="image"><img src="images/iconTransmissionInactive.png" alt="Not Transmitting"></span> +<p><span class="image"><img src="./images/iconTransmissionInactive.png" alt="Not Transmitting"></span> <strong>Non-Transmitting Ports</strong>: The number of Input Ports to which this NiFi is connected but is not currently configured to send data to. Ports can be turned on and off by enabling and disabling transmission on the Remote Process - Group (see <a href="user-guide.html#Remote_Group_Transmission">Remote Process Group Transmission</a>) or via the <a href="user-guide.html#Remote_Port_Configuration">Individual Port Transmission</a> dialog.</p> + Group (see <a href="#Remote_Group_Transmission">Remote Process Group Transmission</a>) or via the <a href="#Remote_Port_Configuration">Individual Port Transmission</a> dialog.</p> </li> </ul> </div> @@ -1849,22 +1849,22 @@ This URL is entered when the Remote Proc <div class="ulist"> <ul> <li> -<p><span class="image"><img src="images/iconOutputPortSmall.png" alt="Output Ports"></span> +<p><span class="image"><img src="./images/iconOutputPortSmall.png" alt="Output Ports"></span> <strong>Output Ports</strong>: The number of Output Ports that are available to pull data from the remote instance of NiFi. If the remote instance is secure, only the ports to which this instance of NiFi has been granted access will be counted.</p> </li> <li> -<p><span class="image"><img src="images/iconTransmissionActive.png" alt="Transmitting"></span> +<p><span class="image"><img src="./images/iconTransmissionActive.png" alt="Transmitting"></span> <strong>Transmitting Ports</strong>: The number of Output Ports from whcih this NiFi is connected and currently configured to pull data from. Ports can be turned on and off by enabling and disabling transmission on the Remote Process - Group (see <a href="user-guide.html#Remote_Group_Transmission">Remote Process Group Transmission</a>) or via the <a href="user-guide.html#Remote_Port_Configuration">Individual Port Transmission</a> dialog.</p> + Group (see <a href="#Remote_Group_Transmission">Remote Process Group Transmission</a>) or via the <a href="#Remote_Port_Configuration">Individual Port Transmission</a> dialog.</p> </li> <li> -<p><span class="image"><img src="images/iconTransmissionInactive.png" alt="Not Transmitting"></span> +<p><span class="image"><img src="./images/iconTransmissionInactive.png" alt="Not Transmitting"></span> <strong>Non-Transmitting Ports</strong>: The number of Output Ports to which this NiFi is connected but is not currently configured to pull data from. Ports can be turned on and off by enabling and disabling transmission on the Remote Process - Group (see <a href="user-guide.html#Remote_Group_Transmission">Remote Process Group Transmission</a>) or via the <a href="user-guide.html#Remote_Port_Configuration">Individual Port Transmission</a> dialog.</p> + Group (see <a href="#Remote_Group_Transmission">Remote Process Group Transmission</a>) or via the <a href="#Remote_Port_Configuration">Individual Port Transmission</a> dialog.</p> </li> </ul> </div> @@ -1890,21 +1890,21 @@ on the Remote Process Group and choosing </div> </div> <div class="sect2"> -<h3 id="Summary_Page"><a class="anchor" href="user-guide.html#Summary_Page"></a>Summary Page</h3> +<h3 id="Summary_Page"><a class="anchor" href="#Summary_Page"></a>Summary Page</h3> <div class="paragraph"> <p>While the NiFi canvas is useful for understanding how the configured DataFlow is laid out, this view is not always optimal when trying to discern the status of the system. In order to help the user understand how the DataFlow is functioning at a higher level, NiFi provides a Summary page. This page is available in the Management Toolbar in the top-right corner -of the User Interface. See the <a href="user-guide.html#User_Interface">NiFi User Interface</a> section for more information about the location of this toolbar.</p> +of the User Interface. See the <a href="#User_Interface">NiFi User Interface</a> section for more information about the location of this toolbar.</p> </div> <div class="paragraph"> <p>The Summary Page is opened by clicking the Summary icon ( -<span class="image"><img src="images/iconSummary.png" alt="Summary"></span> +<span class="image"><img src="./images/iconSummary.png" alt="Summary"></span> ) from the Management Toolbar. This opens the Summary table dialog:</p> </div> <div class="imageblock"> <div class="content"> -<img src="images/summary-table.png" alt="Summary Table"> +<img src="./images/summary-table.png" alt="Summary Table"> </div> </div> <div class="paragraph"> @@ -1913,7 +1913,7 @@ the different elements within the dialog </div> <div class="imageblock"> <div class="content"> -<img src="images/summary-annotated.png" alt="Summary Table Annotated"> +<img src="./images/summary-annotated.png" alt="Summary Table Annotated"> </div> </div> <div class="paragraph"> @@ -1921,7 +1921,7 @@ the different elements within the dialog table is a set of five tabs that can be used to view the different types of components. The information provided in the table is the same information that is provided for each component on the canvas. Each of the columns in the table may be sorted by double-clicking on the heading of the column. For more on the types of information displayed, see the sections -<a href="user-guide.html#processor_anatomy">Anatomy of a Processor</a>, <a href="user-guide.html#process_group_anatomy">Anatomy of a Process Group</a>, and <a href="user-guide.html#remote_group_anatomy">Anatomy of a Remote Process Group</a> above.</p> +<a href="#processor_anatomy">Anatomy of a Processor</a>, <a href="#process_group_anatomy">Anatomy of a Process Group</a>, and <a href="#remote_group_anatomy">Anatomy of a Remote Process Group</a> above.</p> </div> <div class="paragraph"> <p>The Summary page also includes the following elements:</p> @@ -1946,7 +1946,7 @@ in a new browser tab or window (by click </li> <li> <p><strong>Stats History</strong>: Clicking the Stats History icon will open a new dialog that shows a historical view of the statistics that -are rendered for this component. See the section <a href="user-guide.html#Stats_History">Historical Statistics of a Component</a> for more information.</p> +are rendered for this component. See the section <a href="#Stats_History">Historical Statistics of a Component</a> for more information.</p> </li> <li> <p><strong>Refresh</strong>: The Refresh button allows the user to refresh the information displayed without closing the dialog and opening it @@ -1977,11 +1977,11 @@ and Java-specific metrics, such as memor </div> </div> <div class="sect2"> -<h3 id="Stats_History"><a class="anchor" href="user-guide.html#Stats_History"></a>Historical Statistics of a Component</h3> +<h3 id="Stats_History"><a class="anchor" href="#Stats_History"></a>Historical Statistics of a Component</h3> <div class="paragraph"> <p>While the Summary table and the canvas show numeric statistics pertaining to the performance of a component over the past five minutes, it is often useful to have a view of historical statistics as well. This information is available -by right-clicking on a component and choosing the “Stats” menu option or by clicking on the Stats History in the Summary page (see <a href="user-guide.html#Summary_Page">Summary Page</a> +by right-clicking on a component and choosing the “Stats” menu option or by clicking on the Stats History in the Summary page (see <a href="#Summary_Page">Summary Page</a> for more information).</p> </div> <div class="paragraph"> @@ -1990,7 +1990,7 @@ When the Stats dialog is opened, it prov </div> <div class="imageblock"> <div class="content"> -<img src="images/stats-history.png" alt="Stats History"> +<img src="./images/stats-history.png" alt="Stats History"> </div> </div> <div class="paragraph"> @@ -2031,7 +2031,7 @@ Hovering the mouse over the Cluster or o <p>The right-hand side of the dialog provides a drop-down list of the different types of metrics to render in the graphs below. The top graph is larger so as to provide an easier-to-read rendering of the information. In the bottom-right corner of this graph is a small handle ( -<span class="image"><img src="images/iconResize.png" alt="Resize"></span> +<span class="image"><img src="./images/iconResize.png" alt="Resize"></span> ) that can be dragged to resize the graph. The blank area of the dialog above this graph can also be dragged around to move the entire dialog.</p> </div> @@ -2047,7 +2047,7 @@ will remove the selection.</p> </div> </div> <div class="sect1"> -<h2 id="templates"><a class="anchor" href="user-guide.html#templates"></a>Templates</h2> +<h2 id="templates"><a class="anchor" href="#templates"></a>Templates</h2> <div class="sectionbody"> <div class="paragraph"> <p>DFMs have the ability to build very large and complex DataFlows using NiFi. This is achieved @@ -2062,12 +2062,12 @@ This Template can then be dragged onto t received from others can then be imported into an instance of NiFi and dragged onto the canvas.</p> </div> <div class="sect2"> -<h3 id="Create_Template"><a class="anchor" href="user-guide.html#Create_Template"></a>Creating a Template</h3> +<h3 id="Create_Template"><a class="anchor" href="#Create_Template"></a>Creating a Template</h3> <div class="paragraph"> <p>To create a Template, select the components that are to be a part of the template, and then click the “Create Template” ( -<span class="image"><img src="images/iconNewTemplate.png" alt="Create Template"></span> -) button in the Actions Toolbar (See <a href="user-guide.html#User_Interface">NiFi User Interface</a> for more information on the Actions Toolbar).</p> +<span class="image"><img src="./images/iconNewTemplate.png" alt="Create Template"></span> +) button in the Actions Toolbar (See <a href="#User_Interface">NiFi User Interface</a> for more information on the Actions Toolbar).</p> </div> <div class="paragraph"> <p>Clicking this button without selecting anything will create a Template that contains all of the contents of the @@ -2094,12 +2094,12 @@ destination of the Connection is not als </div> </div> <div class="sect2"> -<h3 id="instantiating-a-template"><a class="anchor" href="user-guide.html#instantiating-a-template"></a>Instantiating a Template</h3> +<h3 id="instantiating-a-template"><a class="anchor" href="#instantiating-a-template"></a>Instantiating a Template</h3> <div class="paragraph"> -<p>Once a Template has been created (see <a href="user-guide.html#Create_Template">Creating a Template</a>) or imported (see <a href="user-guide.html#Import_Template">Importing a Template</a>), it is ready to be +<p>Once a Template has been created (see <a href="#Create_Template">Creating a Template</a>) or imported (see <a href="#Import_Template">Importing a Template</a>), it is ready to be instantiated, or added to the canvas. This is accomplished by dragging the Template icon ( -<span class="image"><img src="images/iconTemplate.png" alt="Template"></span> -) from the Components Toolbar (see <a href="user-guide.html#User_Interface">NiFi User Interface</a>) onto the canvas.</p> +<span class="image"><img src="./images/iconTemplate.png" alt="Template"></span> +) from the Components Toolbar (see <a href="#User_Interface">NiFi User Interface</a>) onto the canvas.</p> </div> <div class="paragraph"> <p>This will present a dialog to choose which Template to add to the canvas. After choosing the Template to add, simply @@ -2112,20 +2112,20 @@ longer wanted, it may be deleted.</p> </div> </div> <div class="sect2"> -<h3 id="Manage_Templates"><a class="anchor" href="user-guide.html#Manage_Templates"></a>Managing Templates</h3> +<h3 id="Manage_Templates"><a class="anchor" href="#Manage_Templates"></a>Managing Templates</h3> <div class="paragraph"> <p>One of the most powerful features of NiFi Templates is the ability to easily export a Template to an XML file and to import a Template that has already been exported. This provides a very simple mechanism for sharing parts -of a DataFlow with others. The Management Toolbar (see <a href="user-guide.html#User_Interface">NiFi User Interface</a>) has a button for managing Templates ( -<span class="image"><img src="images/iconTemplate.png" alt="Manage Templates"></span> +of a DataFlow with others. The Management Toolbar (see <a href="#User_Interface">NiFi User Interface</a>) has a button for managing Templates ( +<span class="image"><img src="./images/iconTemplate.png" alt="Manage Templates"></span> ). Clicking this button opens a dialog that allows the user to see all of the Templates that are currently available, filter the templates to see only those of interest, and import, export, and delete Templates.</p> </div> <div class="sect3"> -<h4 id="Import_Template"><a class="anchor" href="user-guide.html#Import_Template"></a>Importing a Template</h4> +<h4 id="Import_Template"><a class="anchor" href="#Import_Template"></a>Importing a Template</h4> <div class="paragraph"> <p>After receiving a Template that has been exported from another NiFi, the first step needed to use the template is to import -the template into this instance of NiFi. From the Template Management dialog (see <a href="user-guide.html#Manage_Templates">Managing Templates</a>), click the +the template into this instance of NiFi. From the Template Management dialog (see <a href="#Manage_Templates">Managing Templates</a>), click the “Browse” button. This provides a File Selection dialog that allows the user to choose which template file to upload. Select the file and click Open. The “Browse” button is replaced by an “Import” button and a “Cancel” button. Clicking the “Import” button will attempt to import the Template into this instance of NiFi. If unable to import @@ -2134,23 +2134,23 @@ added to the table and the “Browse </div> </div> <div class="sect3"> -<h4 id="Export_Template"><a class="anchor" href="user-guide.html#Export_Template"></a>Exporting a Template</h4> +<h4 id="Export_Template"><a class="anchor" href="#Export_Template"></a>Exporting a Template</h4> <div class="paragraph"> -<p>Once a Template has been created, it can be shared with others in the Template Management page (see <a href="user-guide.html#Manage_Templates">Managing Templates</a>). +<p>Once a Template has been created, it can be shared with others in the Template Management page (see <a href="#Manage_Templates">Managing Templates</a>). To export a Template, locate the Template in the table. The Filter in the top-right corner can be used to help find the appropriate Template if several are available. Then click the Export or Download button ( -<span class="image"><img src="images/iconExport.png" alt="Export"></span> +<span class="image"><img src="./images/iconExport.png" alt="Export"></span> ). This will download the template as an XML file to your computer. This XML file can then be sent to others and imported -into other instances of NiFi (see <a href="user-guide.html#Import_Template">Importing a Template</a>).</p> +into other instances of NiFi (see <a href="#Import_Template">Importing a Template</a>).</p> </div> </div> <div class="sect3"> -<h4 id="removing-a-template"><a class="anchor" href="user-guide.html#removing-a-template"></a>Removing a Template</h4> +<h4 id="removing-a-template"><a class="anchor" href="#removing-a-template"></a>Removing a Template</h4> <div class="paragraph"> <p>Once it is decided that a Template is no longer needed, it can be easily removed from the Template Management page -(see <a href="user-guide.html#Manage_Templates">Managing Templates</a>). To delete a Template, locate it in the table (the Filter in the top-right corner +(see <a href="#Manage_Templates">Managing Templates</a>). To delete a Template, locate it in the table (the Filter in the top-right corner may be used to find the appropriate Template if several are available) and click the Delete button ( -<span class="image"><img src="images/iconDelete.png" alt="Delete"></span> +<span class="image"><img src="./images/iconDelete.png" alt="Delete"></span> ). This will prompt for confirmation. After confirming the deletion, the Template will be removed from this table and will no longer be available to add to the canvas.</p> </div> @@ -2159,7 +2159,7 @@ and will no longer be available to add t </div> </div> <div class="sect1"> -<h2 id="data-provenance"><a class="anchor" href="user-guide.html#data-provenance"></a>Data Provenance</h2> +<h2 id="data-provenance"><a class="anchor" href="#data-provenance"></a>Data Provenance</h2> <div class="sectionbody"> <div class="paragraph"> <p>While monitoring a dataflow, users often need a way to determine what happened to a particular data object (FlowFile). @@ -2169,15 +2169,15 @@ like dataflow compliance and optimizatio is configurable.</p> </div> <div class="paragraph"> -<p>To access the Data Provenance page, click the Data Provenance button in the Management Toolbar (see <a href="user-guide.html#User_Interface">NiFi User Interface</a>) -( <span class="image"><img src="images/iconProvenance.png" alt="Data Provenance" width="28"></span> +<p>To access the Data Provenance page, click the Data Provenance button in the Management Toolbar (see <a href="#User_Interface">NiFi User Interface</a>) +( <span class="image"><img src="./images/iconProvenance.png" alt="Data Provenance" width="28"></span> ). Clicking this button opens a dialog window that allows the user to see the most recent Data Provenance information available, search the information for specific items, and filter the search results. It is also possible to open additional dialog windows to see event details, replay data at any point within the dataflow, and see a graphical representation of the data’s lineage, or path through the flow. (These features are described in depth below.)</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/provenance-annotated.png" alt="Provenance Table"></span></p> +<p><span class="image"><img src="./images/provenance-annotated.png" alt="Provenance Table"></span></p> </div> <div class="paragraph"> <p>Each point in a dataflow where a FlowFile is processed in some way is considered a "processing event". Various types of processing @@ -2186,14 +2186,14 @@ data is sent out of the flow, a SEND eve split (FORK event), combined with other data objects (JOIN event), and ultimately removed from the flow (DROP event).</p> </div> <div class="sect2"> -<h3 id="searching-for-events"><a class="anchor" href="user-guide.html#searching-for-events"></a>Searching for Events</h3> +<h3 id="searching-for-events"><a class="anchor" href="#searching-for-events"></a>Searching for Events</h3> <div class="paragraph"> <p>One of the most common tasks performed in the Data Provenance page is a search for a given FlowFile to determine what happened to it. To do this, click the <code>Search</code> button in the upper-right corner of the Data Provenance page. This opens a dialog window with parameters that the user can define for the search. The parameters include the processing event of interest, distinguishing characteristics about the FlowFile or the component that produced the event, the timeframe within which to search, and the size of the FlowFile.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/search-events.png" alt="Search Events" width="400"></span></p> +<p><span class="image"><img src="./images/search-events.png" alt="Search Events" width="400"></span></p> </div> <div class="paragraph"> <p>For example, to determine if a particular FlowFile was received, search for an Event Type of "RECEIVE" and include an @@ -2202,17 +2202,17 @@ So, to determine whether a FlowFile with image could be performed:</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/search-receive-event-abc.png" alt="Search for RECEIVE Event" width="400"></span></p> +<p><span class="image"><img src="./images/search-receive-event-abc.png" alt="Search for RECEIVE Event" width="400"></span></p> </div> </div> <div class="sect2"> -<h3 id="event_details"><a class="anchor" href="user-guide.html#event_details"></a>Details of an Event</h3> +<h3 id="event_details"><a class="anchor" href="#event_details"></a>Details of an Event</h3> <div class="paragraph"> -<p>In the far-left column of the Data Provenance page, there is a View Details icon for each event ( <span class="image"><img src="images/iconViewDetails.png" alt="View Details" width="32"></span> ). +<p>In the far-left column of the Data Provenance page, there is a View Details icon for each event ( <span class="image"><img src="./images/iconViewDetails.png" alt="View Details" width="32"></span> ). Clicking this button opens a dialog window with three tabs: Details, Attributes, and Content.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/event-details.png" alt="Event Details" width="700"></span></p> +<p><span class="image"><img src="./images/event-details.png" alt="Event Details" width="700"></span></p> </div> <div class="paragraph"> <p>The Details tab shows various details about the event, such as when it occurred, what type of event it was, and the component that produced the event. @@ -2225,11 +2225,11 @@ to that FlowFile are displayed on the ri a result of the processing event, the user may select the checkbox next to "Only show modified" in the upper-right corner of the Attributes tab.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/event-attributes.png" alt="Event Attributes" width="700"></span></p> +<p><span class="image"><img src="./images/event-attributes.png" alt="Event Attributes" width="700"></span></p> </div> </div> <div class="sect2"> -<h3 id="replaying-a-flowfile"><a class="anchor" href="user-guide.html#replaying-a-flowfile"></a>Replaying a FlowFile</h3> +<h3 id="replaying-a-flowfile"><a class="anchor" href="#replaying-a-flowfile"></a>Replaying a FlowFile</h3> <div class="paragraph"> <p>A DFM may need to inspect a FlowFile’s content at some point in the dataflow to ensure that it is being processed as expected. And if it is not being processed properly, the DFM may need to make adjustments to the dataflow and replay the FlowFile again. The Content tab of the View Details dialog window is where the DFM can do these things. The Content tab shows information about the FlowFile’s content, such as its location in the Content Repository @@ -2238,69 +2238,69 @@ at this point in the flow. The user may the FlowFile is sent to the connection feeding the component that produced this processing event.</p> </div> <div class="paragraph"> -<p><span class="image"><img src="images/event-content.png" alt="Event Content" width="700"></span></p>
[... 81 lines stripped ...]