VizionHub
VizionHub allows Administrators to manage (configure and deploy) modules deployed on the OneVizion® platform. A code module that is deployed on the OneVizion platform via Modules Library. Examples can be a code module that can send SMS Notifications via Amazon SNS service or a code module that synchronizes records between your OneVizion platform and your system of choice. The module itself will be managed in a Git-compatible repository.
System Parameters
Security Groups
Administer Processes - to stop/interrupt Modules
API endpoints
Modules Library
The Modules Library allows Administrators to configure and deploy modules. From this page, Administrators can Add, Edit/View, and Delete Modules. Access to this page is controlled by ADMIN_MODULE Security Group.
The Release Notes tab provides users with module metadata. The data displayed for the new tab relates to the specified module version.
Components Packages Tab
The Components Packages tab displays all of the components packages related to a module. You can click the hyperlink for each package to see all of the components in each package.
Adding a Module
Administrators can add Modules from a pre-configured repository (Add), the user’s local file system, or by explicitly providing the repository link (Add Manually) from any "Git" providers (Bitbucket, Gitlab, Github). To install modules from the local file system, use the following URL format: file:///<drive letter>:<path to git dir>.
When System Parameters ModuleLibraryRepositoryAccount and ModulesLibraryToken are configured, users can add modules from the repository account when they click on the 'Add Module' button. The below panel with the available code modules from ModuleLibraryRepositoryAccount will be presented to the user.
You can check the description for all available versions. The Version drop-down has been separated from the Install button, so you can select a different version for the Module to read the description. The Install button has been moved down.
When IModuleLibraryRepositoryAccount is not configured, 'Add' will behave like 'Add Manually' where the user will have to provide the Repository details (Repository URL) for the code module that needs to be configured and deployed.
In ModuleLibraryRepositoryAccount parameter, you must specify a link to the organization where the repositories with modules are located. For example, if you specify https://github.com/ov-integrations, then all OneVizion modules will be available. In the ModulesLibraryToken, you need to add a token from GitHub for authorization in it.
GitHub token restriction
Beginning August 13, 2021, we will no longer accept account passwords when authenticating Git operations on GitHub.com. Users can enter the token in the 'Git Credentials: Password' field and 'x-access-token' in the 'Git Credentials: Username' field.
Field | Description |
Module ID | This is a unique identification for the Module. This is automatically generated by OneVizion platform |
Repository URL* | Location of the code module that will be deployed to the OneVizion platform. |
Module Name | Module Name must be unique in the program. The modulename may be different if the URL is |
Git Credentials | Credentials for accessing the 'Repository URL'. Starting Aug 13, 2021, Github will only support tokens for authentication |
Version | Branch or tag of the specified repository. The default version is the master branch. Gets populated automatically |
Command | Command in the operating system that runs the module. This gets populated automatically Example: |
Settings File | A file that contains additional settings/parameters for the code module. This will need to be configured by the Administrator. |
Log Level | (Info, Warning, Error, Debug) |
Read From Stdout | A checkbox that indicates that STDOUT is added to Log Trackor®. This helps to add debug statements that were printed to stdout to the Module Log when checked. |
Description | Description of Module |
Cron Graph | User may click on the Graph to be taken to a linkhttp://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html for a tutorial. |
Schedule | Module run schedule. The schedule must be specified in the quartz cron expression format. |
Last Run | Date and Time of the last run. |
Enabled | When the field is set, the Module is added to the scheduler. When the field isn't set, the Module is excluded from the scheduler. Modules cannot be enabled while the Schedule and Command fields are empty. |
Components Package | Component Package associated with the Module. |
Code modules can be developed and stored in a Git-compatible repository based on guidelines from samples provided.
Users may interrupt a Module by using the Administer Process page.
Administrators can choose whether or not to include sample data when installing a VizionHub module. This is useful for module overview, testing, development, demo, and other purposes but usually not needed when the module is installed in the production environment. Sample data files should be in the installation/sample folder in the Module repository.
When installed modules in VizionHub have invalid credentials, you will see an error message but will have access to the Runs and Configuration tabs for those modules. However, you will not have access to Description, Release Notes, or Available Modules.
Upgrading VizionHub Modules Manually
Administrators can manually upgrade VizionHub to already installed modules.
To upgrade your VizionHub:
Select a higher version from the version dropdown.
Click the Upgrade button.
The upgrade can have new components, SQL scripts, and new data, i.e. .csv, .xml, .sql files. You need to add files with components, SQL scripts, and data to the installation/[version] folder in the repository.
“Grouping by version” is available in the Module Wizard for upgrades. For example: If you want to upgrade a Module from 1.0 version to 1.3, you should create installation/1.1, installation/1.2, and installation/1.3 and put the necessary files into them to upgrade 1.0 to 1.1 then from 1.1 to 1.2 then from 1.2 to 1.3.
Module Run
Each time a module runs (based on its schedule), a PID file gets created and details of each run are logged into the Module Run page. A screenshot below shows the details of Module Runs and clicking on the Status will provide additional details of the run. Access to this page is controlled by ADMIN_MODULE_RUN Security Group.
Viewing/Editing Modules:
Users can use Views and Filters to view or/and edit Modules deployed on the OneVizion platform. Users may Filter on Modules Run by using the Filter option. Log Level, Schedule, and Settings File can be edited as needed from here.
The Module Run grid contains information about the run of the module.
Field | Description |
---|---|
Module Name | Name assigned to the Module |
Module Run ID | ID assigned to the Module Run |
Process ID | ID assigned to the Process |
Status | This field is used to display the state of the selected run. (Running, Executed without Warnings, Executed with Warnings) . |
Start Time | Start date and time |
Finish Time | Finish date and time |
Error Message | Error Message |
Runtime | Runtime |
You can access the specific log for a Module Run record, by clicking on the Log Icon.
Module Log
Module Log can be accessed either from the Module Log page or by clicking the Log Icon from the Module Run record
The Module Log contains information about Module actions, errors, and files. The Log is filled by the Module process in real-time during execution. Access to this page is controlled by ADMIN_IMODULE_LOG Security Group.
Field | Description |
---|---|
Module Log ID | ID assigned to the Module Log |
Log Level | Info, Warning or Error message |
Message | Message |
Full Message | Full message from the executable file |
Timestamp (TS) | Log record date and time |
File | File that is involved in the Module |
Module Name |
|
Process ID |
|
API Endpoints
integration-logs
Read Integration Logs - GET /v3/integrations/runs/logs
Read Integration Log by Integration Log Id - GET /v3/integrations/runs/logs/{integration_log_id}
Read Integration Log File by Integration Log Id - GET /v3/integrations/runs/logs/{integration_log_id}/file
Create Integration Log - POST /v3/integrations/runs/logs/{process_id}/logs
Create Integration Log with file - POST /v3/integrations/runs/logs/{process_id}/logs/file
integration-runs
Read Integration Runs - GET /v3/integrations/runs
Read Integration Run by Process Id - GET /v3/integrations/runs/{process_id}
Create Integration Run - POST /v3/integrations/runs/{integration_name}
Update Integration Run - PUT /v3/integrations/runs/{process_id}
integrations
Read Integrations - GET /v3/integrations
Read Integration by Name - GET /v3/integrations/{integration_name}
Read Integration Settings File by Name – GET /v3/integrations/{integration_name}/settings
Admin- How to Create Module
Wiki is ready and available at the link -
https://github.com/ov-integrations/documentation
When you click on this link, you will see info from the README, it contains a link to the wiki, as well as information about what should be in the README of each integration.
Uninstalling a Module
Select the installed module in VizionHub.
Click the Uninstall dropdown button.
If the module has the capability to automatically uninstall, skip to step 4. Otherwise, click Uninstall Manually.
Click OK on the warning message window.
A window displays “All Module Components have been successfully removed.” Click Next.
Click Finish. The module is now in the Available group in VizionHub.