Chapter 53. Dashbuilder Runtime and Dashbuilder Standalone
Dashbuilder Runtime and Dashbuilder Standalone are add-ons that you can use to view dashboards created in and exported from Business Central. This is useful for reviewing business metrics in environments that do not have Business Central. Dashbuilder Runtime is available to install on Red Hat JBoss EAP. You can deploy Dashbuilder Standalone on Red Hat OpenShift Container Platform.
Navigation between the pages of a dashboard in Dashbuilder Runtime and Dashbuilder Standalone is identical to navigation in the Business Central instance where the dashboard was created. If a page belongs to a group, that group is imported to Dashbuilder Runtime or Dashbuilder Standalone as well as the page. If a page is imported to Dashbuilder Runtime or Dashbuilder Standalone but not used in navigation, then the page is added to the Runtime Dashboards menu group. If no navigation is exported then all pages are added to the Runtime Dashboards menu group.
53.1. Installing Dashbuilder Runtime on Red Hat JBoss EAP
To install Dashbuilder Runtime, download the Dashbuilder Runtime WAR and create a user with the admin
role.
Prerequisites
- You have a Red Hat JBoss EAP installation.
- You have created and exported a dashboard in Business Central. For more information about exporting Dashbuilder data, see the "Exporting and importing Dashbuilder data" section in the Configuring Business Central settings and properties guide.
Procedure
Navigate to the Software Downloads page in the Red Hat Customer Portal (login required), and select the product and version from the drop-down options:
- Product: Process Automation Manager
- Version: 7.13.5
-
Download Red Hat Process Automation Manager 7.13.5 Add Ons (
rhpam-7.13.5-add-ons.zip
) and extract the ZIP file. -
Navigate to the directory that contains the extracted files and extract the
rhpam-7.13.5-dashbuilder-runtime.zip
file. -
Copy the contents of the
dashbuilder-runtime.zip
file that you extracted into the<EAP_HOME>/standalone/deployments
folder where<EAP_HOME>
is the Red Hat JBoss EAP home directory that contains your Red Hat JBoss EAP installation. In the Red Hat JBoss EAP home directory, enter the following command to create a user with the
admin
role and specify a password. In the following example, replace<USERNAME>
and<PASSWORD>
with the user name and password of your choice.$ ./bin/jboss-cli.sh --commands="embed-server --std-out=echo,/subsystem=elytron/filesystem-realm=ApplicationRealm:add-identity(identity=<USERNAME>),/subsystem=elytron/filesystem-realm=ApplicationRealm:set-password(identity=<USERNAME>, clear={password='<PASSWORD>'}),/subsystem=elytron/filesystem-realm=ApplicationRealm:add-identity-attribute(identity=<USERNAME>, name=role, value=['admin'])"
-
In a terminal application, navigate to
EAP_HOME/bin
. Enter the following command to start Red Hat JBoss EAP:
On Linux or UNIX-based systems:
$ ./standalone.sh -c standalone-full.xml
On Windows:
standalone.bat -c standalone-full.xml
-
In a web browser, open the URL
http://localhost:8080
. - Log in using the credentials of the user that you created for Dashbuilder Runtime.
- When promted, upload a dashboard that you exported from Business Central. Dashbuilder Runtime uses that dashboard until it is restarted.
53.1.1. Dashbuilder Runtime system properties
You can use system properties to customize Dashbuilder Runtime.
- Dashboards Path
When a dashboard is uploaded it is stored in the filesystem. The path where it is stored is controlled by the system property
dashbuilder.import.base.dir
. The default is/tmp/dashbuilder
.The system property is the root path for any dashboard model. For example, if there are multiple files on this path, the file can be imported by accessing Dashbuilder Runtime and passing a query parameter import with the name of the file that should be loaded. For example, if you want to load the
sales_dashboard
, executeruntime_host?import=sales_dashboard
and Dashbuilder Runtime will try to load the file/tmp/dashbuilder/sales_dashboard.zip
.- Static Dashboard
-
If you want the runtime instance to load a specific dashboard, you can change the system property
dashbuilder.runtime.import
. Setting the property to a local file path will cause that specific dashboard to be loaded during Runtime startup. - Controlling upload size
-
Application servers control POST request size by default. You can control the allowable size of uploaded dashboards by using the system property
dashbuilder.runtime.upload.size
. The size should be in KB and by default the value is 96kb, meaning that if someone tries to upload a file larger than 96kb then an error will be displayed and the dashboard won’t be installed. - Default pages in Dashbuilder Runtime
Dashboards that are imported in the Dashbuilder Runtime contain a default page. The following list provides a summary of updates of the Dashbuilder Runtime default page:
- When an imported dashboard contains only one page, then it is used as the default page.
-
If a page is named as
index
then it is used as the default page. - In other cases, the generic home page of the Dashbuilder Runtime is used.
- Loading external dashboards
A Dashboard that is located at an accessible URL can be accessed by Dashbuilder Runtime. You can access the URL by passing the URL with the import query parameter such as
runtime_host?import=http://filesHost/sales_dashboard.zip
.NoteFor security reasons this option is disabled by default. You can enable it by setting the system property
dashbuilder.runtime.allowExternal
as true.
53.2. Deploying Dashbuilder Standalone on Red Hat OpenShift Container Platform
You can use Dashbuilder Standalone to view dashboards in OpenShift that were created in and exported from Business Central. This is useful for reviewing business metrics in environments that do not have Business Central. Use the Dashbuilder Standalone operator to deploy Dashbuilder Standalone on Red Hat OpenShift Container Platform separately from other services.
Prerequisites
- Dashbuilder Standalone is available in the OpenShift registry.
- You have prepared your OpenShift environment as described in Deploying an Red Hat Process Automation Manager environment on Red Hat OpenShift Container Platform 4 using Operators.
- You have created and exported a dashboard in Business Central.
Procedure
- On the Operator Installation page, enter a name for your application in the Application name field.
-
In the Environment field, enter a name for your environment, for example
rhpam-standalone-dashbuilder
. - Click Next.
- Optional: On the Security page, configure LDAP or Red Hat Single Sign-On.
- On the Components page, select Dashbuilder from the Components list.
To add a KIE Server data set, complete the following tasks:
NoteYou can add additional KIE Server data sets by repeating this step.
- Click Add new KIE Server DataSets.
-
In the DataSet name field, enter
kieserver-1
. -
In the Kie Server Location field, enter the location of your KIE Server, for example
https://my-kie-server:80/services/rest/server
. To set your credentials, complete one of the following tasks:
- If you do not have a token set, in the Username and Password fields, enter your username and password. Leave the Token field blank.
If you have a token, in the Token field, enter your token. Leave the Username and Password fields blank.
The custom resource example:
apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: standalone-dashbuilder spec: environment: rhpam-standalone-dashbuilder objects: dashbuilder: config: kieServerDataSets: - name: kieserver-1 location: 'https://my-kie-server:80/services/rest/server' user: kieserverAdmin password: kieserverAdminPwd replaceQuery: true
To add a KIE Server template, complete the following tasks:
NoteYou can add additional KIE Server templates by repeating this step.
- Click Add new KIE Server Templates.
-
In the Template name field, enter a name for your template, for example
kieserver-template
. -
In the KIE Server Location field, enter the location of your KIE Server, for example
https://my-other-kie-server:80/services/rest/server
. To set your credentials, complete one of the following tasks:
- If you do not have a token set, in the Username and Password fields, enter your username and password. Leave the Token field blank.
If you have a token, in the Token field, enter your token. Leave the Username and Password fields blank.
apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: standalone-dashbuilder spec: environment: rhpam-standalone-dashbuilder objects: dashbuilder: config: kieServerDataSets: - name: kieserver-1 location: 'https://my-kie-server:80/services/rest/server' user: kieserverAdmin password: kieserverAdminPwd replaceQuery: true kieServerTemplates: - name: kieserver-template location: 'https://my-another-kie-server:80/services/rest/server' user: user password: pwd replaceQuery: true
Optional: To set a custom hostname for the external route, enter a domain in the Custom hostname to be used on the Dashbuilder external Route field, formatted as in the following example:
`dashbuilder.example.com`
NoteThe custom hostname must be valid and resolvable.
To change the custom hostname, you can modify the
routeHostname
property.Optional: To enable and set the Edge termination route, complete the following steps:
- Under Change route termination, select Enable Edge termination.
- Optional: In the Key field, enter the private key.
- Optional: In the Certificate field, enter the certificate.
- Optional: In the CaCertificate field, enter the CaCertificate.
53.2.1. Dashbuilder Standalone environment variables
When you use the Dashbuilder Container Image within operator, you can configure Dashbuilder by using the environment variables or through Custom Resource.
Table 53.1. Custom Resource parameters
Parameter | Equivalent Environment Variable | Description | Example value |
---|---|---|---|
|
| Allows downloading of external (remote) files. Default value is false. | False |
|
| Enables external components. | True |
|
| Enables partitioning of components by the Runtime Model ID. Default value is true. | True |
|
| Allows the use of the properties file with Dashbuilder configurations. Unique properties are appended and if a property is set more than once, the one from the properties file is used. | True |
|
| Enables partitioning of Dataset IDs by the Runtime Model ID. Default value is true. | True |
| — | Enables integration with Business Central by configuring Business Central and Dashbuilder automatically. Only available on operator. | True |
| — | Enables integration with KIE Server by configuring KIE Server and Dashbuilder automatically. Only available on operator. | True |
|
|
Sets the base directory where dashboard ZIP files are stored. If | — |
|
| Sets a static dashboard to run automatically. If this property is set, imports are not allowed. | — |
|
|
Sets the base directory where dashboard ZIP files are stored. If | — |
|
| Defines the KIE Server data sets access configuration. | — |
|
| Defines the KIE Server Templates access configuration. | — |
|
| Enables automatic removal of model file from the file system. Default value is false. | False |
|
| Allows Runtime to check model last update in the file system to update the content. Default value is true. | True |
| `` |
Sets Dashbuilder as not ephemeral. If | True |
|
| Allows Runtime to allow imports (multi-tenancy). Default value is false. | False |
|
| Sets the size limit for dashboard uploads (in kb). Default value is 10485760 kb. | 10485760 |
| — | Represents an environment variable present in a Container. | — |
You can use operator to set environment variables by using the env
property. The following example sets the value of the DASHBUILDER_UPLOAD_SIZE
property to 1000
.
apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: standalone-dashbuilder spec: environment: rhpam-standalone-dashbuilder objects: dashbuilder: env: - name: DASHBUILDER_UPLOAD_SIZE value: '1000'