14
Flo for Spring XD Documentation Published: 14 March 2019 © 2019 Pivotal Software, Inc. All Rights Reserved.

Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

FloforSpringXD

Documentation

Published:14March2019

©2019PivotalSoftware,Inc.AllRightsReserved.

Page 2: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

235614

TableofContents

TableofContentsFloforSpringXDInstallingFloGuidelinesforBuildingComposedJobsProvidingFeedback,RequestingFeatures,andReportingBugs

©CopyrightPivotalSoftwareInc,2013-2019 2

Page 3: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

FloforSpringXD

FloisanHTML5canvasapplicationthatrunsontheSpringXDruntime,offeringagraphicalinterfaceforcreatingandmonitoringstreamingandbatchdatapipelines.

DragandDropInterfaceFloallowsyoutocreatereal-timestreamingandbatchpipelineseitherwiththetextualshellorthe‘draganddrop’interface.Formoreinformation,seetheBuildingStreams andAdvancedStreamCreation .

FloandStreamingPipelinesThetextualshellofferscontent-assistforstreamdefinitions.Whetheritisasource,processor,sink,orjob,content-assistofferscompletionofmodulenamesandmoduleoptions.Thisallowsforrapiddevelopment,andissimilartothecontent-assistexperiencewhenwritingcodeinanIDE.Formoreinformation,seetheContentAssistandValidation tutorialvideo.

Thetextualandgraphicalviewsarekeptinsyncautomatically.Whileworkingonastreamdefinitionyoucanswitchthemandstillfindanup-to-daterepresentationofyourpipelines.

Floincludesapalettewithallout-of-the-boxadaptersavailableinSpringXD.Thepalettealsoincludesasmartsearchfilterforquickmodulelookup.Onceyoufindyourdesiredmodule,youcandraganddropthemoduletothecanvastocreateanewdefinitionoraugmentanexistingone.

Pipelinesarecomposedofsource,processor(0..n),andsinkmodules.Floexpectsthisstructureandoffersimmediatefeedbackonanyissuesitfinds.Thetextualshelldisplayserrormessagesforsyntaxerrorsandotherproblemswithstreamdefinitions,suchasifamoduleisspecifiedwithanunsupportedoption.

HealthMonitoringSpringXDusesSpringBoot’smonitoringandmanagementsupportoverHTTPandJMXalongwithSpringIntegration’sMBeanExporters.Floleveragestheseendpointstoprovidevisualhealthmonitoring.

ThestatesofpipelinesinSpringXDarerepresentedvisuallybydifferentcolors.Green,orange,grey,andredindicate Deployed , Incomplete , Undeployed ,and Failed ,respectively.

Smallcoloredcirclesundereachmodulerepresentthestatesofthatmodule’sinstances.Whiteindicatesthataninstanceiswaitingtobedeployed,andgreenindicatessuccessfuldeployment.Hoveringoveracircleprovidesinformationspecifictothecorrespondinginstance,suchaswhereitisrunning.Ifyourequestalargenumberofinstancesinthisway,theviewswitchesfromcirclestoasimplenumericsummaryofhowmanyaresuccessfullydeployedversushowmanyhavebeenrequested.

MetricsFlooverlaysthestreamviewofeachmodulewiththecombinedmessagethroughputforallinstancesofthatmodule.Whereapplicable,theinputrateisdisplayedtotheleftofthemoduleandtheoutputrateisdisplayedontheright.

Formoreinformation,seetheHealthMetrics tutorialvideo.

FloandBatchPipelinesFloalsooffersatextualshellandgraphicalviewforbatchpipelines.Aswiththetextualshellandgraphicalviewforstreamingpipelines,theyarekeptinsyncautomatically.FloforBatchpipelinesinSpringXDisavailableunderJobs>CreateComposedJob.

Unlikethepaletteforstreamingpipelines,thepaletteforbatchpipelinesdoesnotincludeout-of-the-boxjobmodules.Jobdefinitionsforbatchpipelinesmustfirstbecreated,andarethenavailableinthepalette,alongwithanyalready-definedcomposedjobs.

Note:FloforSpringXDisnolongersupported.Tostayuptodatewiththelatestsoftwareandsecurityupdates,upgradetoasupportedversion.

©CopyrightPivotalSoftwareInc,2013-2019 3

Page 4: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

FloforBatchpipelinebuildsuponthenewlysupportedBatchDSLinSpringXD,whichcanbeusedtocreatecompositebatchworkflowsinvolvingsequentialjobs,paralleljobsoreventhecombinationofthetwo.

TheFlocanvastextualshellanddrag-and-dropinterfacebothsupporttheSpringXDbatchDSL.JobdefinitionsintheDSLwillbecomputedautomaticallyforbatchjobscomposedinthedrag-and-dropinterface.

ExistingcompositebatchworkflowscanbeviewedbyclickingJobs>Definitions.Infuturereleases,Flowillincludecomprehensivefeaturesforbatchpipelinessuchasmetrics,statusesanddistributedtracingofbatchjobs.

©CopyrightPivotalSoftwareInc,2013-2019 4

Page 5: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

InstallingFloThistopicprovidesinstructionsforinstallingFloforSpringXD.

1. InstallorupdatetothelatestSpringXDGArelease,orthereleaseofyourchoice.

2. VisittheFloproductpage anddownload flo-spring-xd-admin-ui-client-[RELEASE_OF_YOUR_CHOICE].zip .

3. Navigatetothe XD_HOME/lib directoryandbackupyouroriginal spring-xd-admin-ui-client-[RELEASE].jar file.

4. Whilestillinthe XD_HOME/lib directory,unzip flo-spring-xd-admin-ui-client-[RELEASE_OF_YOUR_CHOICE].zip toreplacetheexisting spring-xd-admin-ui-client-[RELEASE].jar .

5. Clearyourbrowsercache.

6. AccessFloforSpringXDatthefollowingURIendpoints:

Maindashboard: http://HOST_NAME:PORT/admin-uiStreamcreation: http://HOST_NAME:PORT/admin-ui/#/streams/createHealthmonitoring: http://HOST_NAME:PORT/admin-ui/#/streams/definitionsModulethroughputratesarevisibleat http://HOST_NAME:PORT/admin-ui/#/streams/definitions .

Note:Ifunchanged,thedefaultPORTpointsto9393.

Note:Toseethroughputratesformodules,youmustenableJMXinyourSpringXDcluster.Bydefaultitisdisabled.

©CopyrightPivotalSoftwareInc,2013-2019 5

Page 6: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

GuidelinesforBuildingComposedJobsThistopicprovidesinstructionsforbuildingcomposedjobs.

Thebasicbuildingblockisaflow,whichisasequenceofoneormorejobs.

Flowsareselfcontainedandthereiseffectivelyoneentrypointandallexitsfromaflowexittothesamenexttarget.

Youcanlinktheendofoneflowtothestartofanewflowbutyoucan’tlinkbetweenintermediatenodesintwoflows.

Asplitindicatesanumberofflowsruninparallel.

Acomposedjobcanspecifyatimeout,thisaglobalsettingforthejob.TosetaglobalsettingforajobopenthepropertiesfortheSTARTnodeandsetitthere.

Althoughjobsinaflowareexpressedsuchthatonerunsafteranother,aconditionaltransitioncanbesetuptocausesomethingdifferenttohappenwhenaparticularjobfinishes.TheconditionaltransitionspecifiestheJobExitStatuswhichtriggersitandthenwhathappensnext:thismightbeanotherjoboritmightbeimmediatelyENDingorFAILingthatflow.

Thewildcard‘*’valueforaconditionaltransitionjobexitstatusrepresentseverythingnotmappedbyothertransitionsfromthesamejob.

Forthelastjobinaflow,iftheexitspaceisbeingmappedinanyway(ifthereareanyconditionaltransitionsoutofit)thenitisimportanttomaptheentireexitspacebyensuringyouhaveaconditionaltransitionfor‘*’(meaning‘anyexitstatus’).

Ifyourgraphlookslikespaghetti,considerdecomposingitfurther.Youcanbuildasimplecomposedjobthenusethatasabuildingblockinanothercomposedjob.

©CopyrightPivotalSoftwareInc,2013-2019 6

Page 7: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

©CopyrightPivotalSoftwareInc,2013-2019 7

Page 8: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

©CopyrightPivotalSoftwareInc,2013-2019 8

Page 9: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

©CopyrightPivotalSoftwareInc,2013-2019 9

Page 10: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

©CopyrightPivotalSoftwareInc,2013-2019 10

Page 11: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

©CopyrightPivotalSoftwareInc,2013-2019 11

Page 12: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

©CopyrightPivotalSoftwareInc,2013-2019 12

Page 13: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

©CopyrightPivotalSoftwareInc,2013-2019 13

Page 14: Flo for Spring XD - Pivotal · Flo for Spring XD Flo is an HTML5 canvas application that runs on the Spring XD runtime, offering a graphical interface for creating and monitoring

ProvidingFeedback,RequestingFeatures,andReportingBugsUseJIRAtoprovidefeedback,requestafeature,orreportabug.EnsurethatyouenterthefollowinginformationinanySpringXDJIRAticket thatyoucreate:

EpicLink:FloforSpringXD

Summary:[Flo]Myissue…

Description:AsaFloforSpringXDuser,I…

©CopyrightPivotalSoftwareInc,2013-2019 14