| <!DOCTYPE html> |
| <!-- |
| | Generated by Apache Maven Doxia at 2018-03-12 |
| | Rendered using Apache Maven Fluido Skin 1.3.0 |
| --> |
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
| <head> |
| <meta charset="UTF-8" /> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
| <meta name="Date-Revision-yyyymmdd" content="20180312" /> |
| <meta http-equiv="Content-Language" content="en" /> |
| <title>Falcon - Back Log Emitter Service</title> |
| <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" /> |
| <link rel="stylesheet" href="./css/site.css" /> |
| <link rel="stylesheet" href="./css/print.css" media="print" /> |
| |
| |
| <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script> |
| |
| |
| |
| <script type="text/javascript">$( document ).ready( function() { $( '.carousel' ).carousel( { interval: 3500 } ) } );</script> |
| |
| </head> |
| <body class="topBarDisabled"> |
| |
| |
| |
| |
| <div class="container"> |
| <div id="banner"> |
| <div class="pull-left"> |
| <div id="bannerLeft"> |
| <img src="images/falcon-logo.png" alt="Apache Falcon" width="200px" height="45px"/> |
| </div> |
| </div> |
| <div class="pull-right"> </div> |
| <div class="clear"><hr/></div> |
| </div> |
| |
| <div id="breadcrumbs"> |
| <ul class="breadcrumb"> |
| |
| |
| <li class=""> |
| <a href="index.html" title="Falcon"> |
| Falcon</a> |
| </li> |
| <li class="divider ">/</li> |
| <li class="">Back Log Emitter Service</li> |
| |
| |
| |
| <li id="publishDate" class="pull-right">Last Published: 2018-03-12</li> <li class="divider pull-right">|</li> |
| <li id="projectVersion" class="pull-right">Version: 0.11</li> |
| |
| </ul> |
| </div> |
| |
| |
| |
| <div id="bodyColumn" > |
| |
| <div class="section"> |
| <h2>Back Log Emitter Service<a name="Back_Log_Emitter_Service"></a></h2> |
| <p>Back Log Emitter service keeps track of all the process which have missed an SLA for a particular time and calculates backlog. Once a notification comes that process has completed, it updates the backlog. This service keeps on sending data to Graphite for each process which is missing SLA.</p> |
| <p>The emission and calculation of backlog are controlled by the below properties in startup.properties :</p> |
| <div class="source"> |
| <pre> |
| *.falcon.backlog.metricservice.emit.interval.millisecs=60000 |
| *.falcon.backlog.metricservice.recheck.interval.millisecs=60000 |
| |
| </pre></div></div> |
| <div class="section"> |
| <h2>How Backlog is Calculated<a name="How_Backlog_is_Calculated"></a></h2> |
| <p>Back Log Emitter Service is a listener to :</p> |
| <p></p> |
| <ol style="list-style-type: decimal"> |
| <li>EntitySLAAlertService</li> |
| <li>WorkflowExecutionListener</li></ol> |
| <p>EntitySLAListeners service notifies BacklogEmitter whenever a process misses its shouldEndIn sla.</p> |
| <p>WorkflowExecutionListener notifies BacklogEmitter service whenever a process get completed.</p> |
| <p><b>Back Log Calculation:</b></p> |
| <p>If two instances of hourly process p1 have missed SLA for 4th and 5th hour then in 6th hourbacklog for process p1 will be ((6-4) + (6-5))*60 = 180 mins. It is cumulative in nature.</p></div> |
| <div class="section"> |
| <h2>Dependencies :<a name="Dependencies_:"></a></h2> |
| <p><b>Other Services :</b></p> |
| <p>Following services and listeners should be enabled for Backlog Emitter Service in startup.properties:</p> |
| <div class="source"> |
| <pre> |
| ##Add if you want to enable BacklogMetricService |
| # org.apache.falcon.service.FalconJPAService,\ |
| # org.apache.falcon.metrics.MetricNotificationService,\ |
| # org.apache.falcon.service.EntitySLAMonitoringService,\ |
| # org.apache.falcon.service.EntitySLAAlertService,\ |
| # org.apache.falcon.service.BacklogMetricEmitterService |
| |
| *.entityAlert.listeners=org.apache.falcon.service.BacklogMetricEmitterService |
| |
| *.workflow.execution.listeners=org.apache.falcon.handler.SLAMonitoringHandler |
| |
| </pre></div> |
| <p><b>Falcon Database :</b> Back Log Emitter Service maintains its state in the database. It needs one table <b>BACKLOG_METRIC</b> please have a look at <a href="./FalconDatabase.html">FalconDatabase</a> to know how to create it.</p></div> |
| </div> |
| </div> |
| |
| <hr/> |
| |
| <footer> |
| <div class="container"> |
| <div class="row span12">Copyright © 2013-2018 |
| <a href="http://www.apache.org">Apache Software Foundation</a>. |
| All Rights Reserved. |
| |
| </div> |
| |
| |
| <p id="poweredBy" class="pull-right"> |
| <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"> |
| <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /> |
| </a> |
| </p> |
| |
| </div> |
| </footer> |
| </body> |
| </html> |