The SL1 PowerFlow Platform version 2.2.0 includes enhancements to the Transform component, a new Trigger Application component for building groups of steps in a PowerFlow application, and a new set of solution types for licensing the PowerFlow platform. This release also includes a number of addressed issues.
Unless mentioned elsewhere in the documentation, Synchronization PowerPacks do not require a specific version of the PowerFlow Platform.
After the 2.1.0 platform release, the Integration Service was rebranded as SL1 PowerFlow, and the Automation Builder was rebranded as the SL1 PowerFlow builder.
Features Included in this Release
The following features were included in PowerFlow Platform version 2.2.0:
-
The Transform component in the PowerFlow builder user interface lets you take data from one step and modify or transform the data to fit into the next step in a PowerFlow application. You can also combine data from multiple steps and use that data in later steps in the application.
The Transform component was updated with the following new features:
- On the Transform Wizard page, you can drag and drop objects and arrays when building a transformation for an application. You can also view output data on this page after first loading the application, and error handling on this page was improved.
- You can use the Jinja/UI toggle on the Transform Wizard page to switch between the Jinja code-only view or the UI drag-and-drop view. The default setting for the Jinja/UI toggle is the UI drag-and-drop view.
- A Search field was added to the left-hand panel on the Transform Wizard page to help you find the data you want to transform.
- The Transform Wizard page was updated to prevent a user from mixing filters and data types (strings, numbers, or arrays) when creating a Jinja template.
-
The Trigger Application component in the PowerFlow builder user interface lets you launch another PowerFlow application from within a new or existing PowerFlow application. Step data from the triggered application is available in the parent application that triggered the application.
The Trigger Application component includes the following features:
-
After you drag the Trigger Application component from the tab of the Steps Registry page, the Trigger App wizard page appears. From this page, you can select and configure an existing PowerFlow application that will be triggered by the current application.
- You can drag and drop data and filters into specific parameters on the Trigger App wizard page.
- You can also use Jinja2 templates in the step parameters for the Trigger Application component.
- If a step triggers a child application, a blue information icon appears in the upper left corner of the step. Click the icon to display the triggered application's run as a link in a pop-up window, which lists the run IDs by Success, Failure, or In Progress. You can click the link in the pop-up window to view the detail page for the triggered application. If no run ID is present, the pop-up window displays "No runs available".
-
The licensing for the PowerFlow platform was separated into three solution types:
-
Standard: This solution lets you import and install Synchronization PowerPacks published by ScienceLogic and ScienceLogic Professional Services, and to run and schedule PowerFlow applications from those PowerPacks. You cannot customize or create applications or steps with this solution type. Features that are not available are displayed in gray text.
-
Advanced: This solution contains all of the Standard features, and you can also build your own Synchronization PowerPacks and upload custom applications and steps using the command-line interface. You can create PowerFlow applications using the PowerFlow command-line interface, but you cannot create and edit applications or steps using the PowerFlow builder.
-
Premium: This solution contains all of the Advanced features, and you can also use the PowerFlow builder, the low-code/no-code, drag-and-drop interface, to create and edit PowerFlow applications and steps.
For more information, see ScienceLogic Pricing.
If you are upgrading from PowerFlow version 2.x.x to this release, you will need to upgrade your license to the Advanced or Premium solution to be able to upload custom content (such as steps and applications) for Synchronization PowerPacks, or to the Premium solution if you want to use the PowerFlow builder. Please note that this licensing update does not impact any solutions that are already installed on the PowerFlow system, and you can continue to run and schedule existing content as needed. For more information about the Advanced and Premium solutions, please contact your Customer Success Manger.
-
A license expiration text box appears in the PowerFlow user interface when the license is close to expiring, displaying how many days are left before the license expires. The license status and expiration date also displays on the About page in the PowerFlow user interface.
-
This release significantly improves performance related to task status querying, reducing the API memory requirements and increasing the responsiveness of the PowerFlow user interface. When a PowerFlow system queries for the state of a task, instead of pulling all relevant data from that task, the system only pulls the metadata that is needed at that time. For more information, see the "Configuring PowerFlow for Scalability" topic in the Installing and Configuring SL1 PowerFlow chapter of the SL1PowerFlow Platform manual.
If you are using a version of PowerFlow before version 2.2.0, or if you are upgrading to version 2.2.0, ScienceLogic recommends that you assess the current utilization of your PowerFlow system, because there will be a greater impact on the Couchbase database by default. If you find the database, or database node, is running at max CPU (80% or greater), you should be prepared to increase CPUs allocated to the Couchbase nodes, or deploy an additional database node to accommodate for the additional load. Alternatively, if the benefits of this feature are not desired, and you cannot afford to increase CPU in a large scale environment, you can disable it by setting enable_state_backend: false in the environments section in the docker-compose.yml file on the contentapi, steprunner, and syncpack_steprunner services. Disabling this feature will no longer store metadata in the Couchbase database, which removes the additional overhead on Couchbase, but you will not experience the benefits listed above.
- Added three new configuration variables to the docker-compose file that let you configure the number of retries for saving logs and log statuses in Couchbase. You can edit the default values of these variables to improve the access to Couchbase when saving the application and step logs. The new variables include the following:
- logs_timeout_retries. Use this configuration variable as env_var in the docker-compose file for the workers, if any other number of retries is needed. The default is 3.
- logs_delay_retries. The delay of retries. The default is 2.
-
state_timeout_retries. Number of retries for Celery. This value can be changed using the env_var in the docker-compose file for the workers, if any other number of retries is needed. The default is 3.
-
Additional updates were made to the SL1PowerFlow user interface and the files related to PowerFlow to complete the branding transition from the "Integration Service" to "SL1 PowerFlow" and "PowerFlow builder":
- Updated the PowerFlow user interface with PowerFlow branding, including changing the Integrations page to the Applications page and updating the About page.
- Updated the RPM name, ISO name, and related scripts with PowerFlow branding. The RPM file name is now sl1-powerflow-2.2.0-1.x86_64.rpm, and the ISO file name is now sl1-powerflow-2.2.0.iso.
- Updated the ISO installation wizard screens with PowerFlow branding.
- A "Refresh timer countdown" option was added to PowerFlowApplication detail pages. This option lets you choose different update speeds when you run the application. The update speed specifies how soon the PowerFlow user interface reloads the application page from the API while the applications is running. You can specify intervals of 15, 30, or 60 seconds, and the default is 60 seconds.
- Added a Applications page, along with a counter that counts down how many seconds remain before the next time PowerFlow automatically refreshes the page. Also, all Application detail pages were updated with a button that you can click to update the contents of the page. button on the
- Added a PowerFlowApplication detail pages that lets you stop a started application and end all running tasks for that application. button to
- Added a new Notification Center pane. button to the
-
The PowerFlow Application page now has the following options:
button on a
- Debug Replay. Replay the application in Debug Mode, which provides more log data in the Step Logs to help you with troubleshooting.
- Custom Replay. Replay the run with a logging level that you specify, along with any customer parameters you might want to use.
- Added a Step Log pane in the PowerFlow user interface to help users copy logs and send them to ScienceLogic Support. button to the
- The error messaging and error handling were improved for issues with Synchronization PowerPack installation.
- The "syncpack" property was added to application steps to identify the corresponding Synchronization PowerPack when you create a PowerFlow application in the PowerFlow user interface.
- The "start_time" property for the step logs is only available when enable_state_backend is set to true in the environments section of the docker-compose.yml file on the workers.
- The Base Steps Synchronization PowerPack version 1.2.0 is included with PowerFlow version 2.2.0, and the Synchronization PowerPack includes the following updates:
- Updated the logging output of the "Trigger Application" step by removing duplicate log outputs, moving summary logs to Flow level, and moving more verbose logs to Info level.
- Added a new step called "QueryREST: OAuth" was created that lets you input an OAuth 2.0 access token that will be used to authenticate with the PowerFlow API endpoint. This step is included in the
- The "Query REST" step JSON code was updated to include the following help text for url_from_input: "These input fields for the URL must be added to the relative_url, not the prefix_url."
-
You can configure the existing "Query REST" step to use bearer authentication by adding the bearer token to the request headers in the Configuration pane for that step. The headers field should look like the following:
{
"Authorization": "Bearer <token_id>",
"accept": "application/json",
"content-type": "application/json"
}
- The following services are included in this release of PowerFlow:
- contentapi. sciencelogic/pf-api:release-2.2.0
- couchbase. image: sciencelogic/pf-couchbase:6.0.2-3
- dexserver. image: sciencelogic/pf-dex:2.22.0-1
- steprunner. image: sciencelogic/pf-worker:release-2.2.0
- flower. image: sciencelogic/pf-worker:release-2.2.0
- scheduler. image: sciencelogic/pf-worker:release-2.2.0
- gui. image: sciencelogic/pf-gui:release-2.2.0
- pypiserver. image: sciencelogic/pf-pypi:4.8.1-5
- rabbitmq. image: sciencelogic/pf-rabbit:3.7.27-4
- redis. image: sciencelogic/pf-redis:4.0.14-2
- syncpacks_steprunner. image: sciencelogic/pf-worker:release-2.2.0
To view release notes and manuals for all versions of the SL1 PowerFlow Platform, see SL1 PowerFlow Platform Documentation. To view release notes and manuals for PowerFlow Synchronization PowerPacks, see SL1 Workflow Automation PowerPack Documentation.
Issues Addressed in this Release
The following issues were addressed in PowerFlow Platform version 2.2.0:
-
Addressed an issue where you could not add or edit the Customer CI Relation Override field in the "Sync Devices from SL1 to ServiceNow" application. (Cases: 00115449, 00124366. JIRA IDs: EM-38992, INT-3154)
-
Addressed an issue where adding invalid JSON values to the Customer CI Relation Override field in the "Sync Devices from SL1 to ServiceNow" application did not generate an error message. A red "X" icon now appears next to invalid JSON values on the Show JSON Configs pane for this application, and if you try to save an invalid JSON value, a pop-up appears to tell you that the error must be corrected before you can save.
-
Addressed an issue where you could not save an application if the Show JSON Configs pane was visible.
-
Addressed an issue where an unlicensed PowerFlow user was not able to create a configuration object, align a configuration object to a PowerFlow application, and save and run the application.
-
Addressed an issue where users (including unlicensed users) could not edit the configuration settings for a PowerFlow application.
-
Addressed an issue where some condition labels for an application did not display properly.
-
Addressed an issue where the steps that came after a Condition operator in a PowerFlow application did not display as started or successfully run until you refreshed the Application page.
-
Updated the Troubleshooting SL1PowerFlowchapter of the SL1PowerFlow Platform manual with a new FAQ topic about what to do when the Couchbase disk is full and the indexer is failing.
-
Updated the "Troubleshooting Upgrade Issues" topic in the Installation chapter of the SL1PowerFlow Platform manual with the following information about virtual environments: If the Docker container does not properly mount the virtual environment, or the virtual environment is not accessible to the environment, you might need to remove and re-deploy the service to resolve the issue.
Known Issues
This release contains the following known issues:
- If your PowerFlow system uses self-signed certificates, you will need to manually accept the certificate before you can upload Synchronization PowerPacks. Go to https://<IP address of PowerFlow>:3141/isadmin, accept the certificate, and then log into PowerFlow. After you log in, you will be able to upload Synchronization PowerPacks.
-
The latest tag does not exist after the initial ISO installation. This situation only affects users with custom services that point to the latest tag. To work around this issue, run the tag latest script manually after running the ./pull_start_iservices.sh command:
python /opt/iservices/scripts/system_updates/tag_latest.py /opt/iservices/scripts/docker-compose.yml
System Requirements
The PowerFlow builder is available as part of an SL1 Premium solution. To upgrade, contact ScienceLogic Customer Support. For more information, see https://sciencelogic.com/pricing.
The PowerFlow platform does not have a specific minimum required version for SL1. However, certain PowerFlow Synchronization PowerPacks have minimum version dependencies. Please see the documentation for those Synchronization PowerPacks for more information on those dependencies.
The following table lists the PowerFlow ingress requirements:
Source | Port | Purpose |
SL1 host |
443 |
SL1 run book actions and connections to PowerFlow |
User client |
3141 |
Devpi access |
User client |
443 |
PowerFlow API |
User client |
5556 |
Dex Server: enable authentication for PowerFlow |
User client |
8091 |
Couchbase Dashboard |
User client |
15672 |
RabbitMQ Dashboard |
User client |
22 |
SSH access |
The following table lists the PowerFlow egress requirements:
Destination | Port | Purpose |
SL1 host |
7706 |
Connecting PowerFlow to SL1 Database Server |
SL1 host |
443 |
Connecting PowerFlow to SL1 API |
ScienceLogic highly recommends that you disable all firewall session-limiting policies. Firewalls will drop HTTPS requests, which results in data loss.
PowerFlow clusters do not support vMotion or snapshots while the cluster is running. Performing a vMotion or snapshot on a running PowerFlow cluster will cause network interrupts between nodes, and will render clusters inoperable.
The site administrator is responsible for configuring the host, hardware, and virtualization configuration for the PowerFlow server or cluster. If you are running a cluster in a VMware environment, be sure to install open-vm-tools and disable vMotion.
You can configure one or more SL1 systems to use PowerFlow to sync with a single instance of a third-party application like ServiceNow, Restorepoint, or Cherwell. You cannot configure one SL1 system to use PowerFlow to sync with multiple instances of a third-party application like ServiceNow or Cherwell. The relationship between SL1 and the third-party application can be either one-to-one or many-to-one, but not one-to-many.
The default internal network used by PowerFlow services is 172.21.0.1/16. Please ensure that this range does not conflict with any other IP addresses on your network. If needed, you can change this subnet in the docker-compose.yml file.
The PowerFlow operating system is an Oracle Linux distribution, and all patches are provided within the standard Oracle Linux repositories. The patches are not provided by ScienceLogic.
For more information about system requirements for your PowerFlow environment, see the System Requirements page at the ScienceLogic Support site at https://support.sciencelogic.com/s/system-requirements.
Installing or Upgrading PowerFlow
For detailed steps about installing or upgrading to this version of PowerFlow, see
If you are using the ServiceNow CMDB Synchronization PowerPack, this release of PowerFlow requires version 3.1.1 or later of that Synchronization PowerPack. You can download this Synchronization PowerPack from the PowerPack Downloads page.