- 17 Aug 2021
- 7 Minutes to read
- Print
- DarkLight
Exploring the Decisions File System Directory (v.6)
- Updated on 17 Aug 2021
- 7 Minutes to read
- Print
- DarkLight
Overview
The Decisions File System is held within a Folder in the Program Files section of the PC File Explorer that becomes available once Decisions is installed.
Similar to other Program File Systems, this Folder contains other Folders that are responsible for helping Decisions operate. These Folders hold helpful tools such as Log and Settings files, that can be configured to meet the needs of an organization.
File System Folders
The Decisions file system contains 6 folders by default; MSI, Services Manager, Services Manager Watcher, Web Host, FileStorage, and Images. These Folders are used to move data in Decisions, provide data for default Composite Types in the environment, alter the environment settings via .XML, view logging details, and much more.
Decisions MSI
This Folder contains the default Decisions MSI file called Decisions.Services.x64, which is the Windows Installer Package file for Decisions Services.
Decisions Services Manager
The Decisions Services Manager Folder is home to several files and Folders that pertain to the function of Decisions Services, such as the Studio environment. Each of these Folders either contains Core Decisions files or can contain files that modify the functions of different aspects in the Decisions environment.
The following chart represents the Sub-Folders located within the Decisions Services Manager Folder:
Folder Name | Description |
---|---|
AgentBootstrapper | Contains the configuration files for the Agent bootstrapper. An Agent allows communication with a client-server that is secured with a firewall. The bootstrapper is responsible for creating an executable (.exe) install package on the machine where the Agent is installed. |
bin | Contains most of the core Decisions .dll files. These files are compiled code written in C# and are application dependencies for the Decisions platform. |
CustomModules | This Folder does not contain any files by default. It is used to hold .dll files implemented with the Decisions SDK for access to customized modules within the environment. |
framework | Contains the Decisions framework .dll files. |
Instances | Contains all of the Folders for maintaining multi-tenant instance environments. The Host Folder contains service information about the host machine of the multi-tenant environment. The Control Folder contains .dll files that comprise the "controlling" Decisions instance environment build. |
licensing | Contains the Licensing Utility which is used to properly license the Decisions environment in accordance with the type of license acquired. Also contains a text file of Open Source Software (OSS) project copyrights. |
Logs | Contains all of the recorded logs from the Decisions environment and from the Service Host, which manages Decisions as an application. These logs are often referenced for issues with installing, connecting to integrated services, using Designer Elements in the product, and more. |
modules | Contains all of the files that are used or unpacked when a module is installed in the Decisions environment. Decisions comes with several module options that can be installed to add Designer Elements in the environment that help with integrating third-party services. |
MovedDlls | This Folder does not contain any files by default.It is used to store any moved .dll files if needed. |
SilverLightAssemblies | Contains all of the Microsoft Silverlight .dll files that were used with the core Decisions framework in deprecated versions. This Folder contains legacy applications that are no longer used in Decisions and will be removed from future versions. |
support | This Folder contains legacy applications that are no longer used in Decisions and will be removed from future versions. |
The function of the Application files in this Folder range from creating a Custom Module to importing custom JavaScript controls, and more. These applications are used with the Decisions Software Developer Kit (SDK). For more information on the Decisions SDK, please visit the SDK Overview article.
The Decisions.DataBackup application is a tool that assists with the backup or restore of Decisions Application Data, like environment settings.
Settings.XML File
One of the most often used files in the Decisions file system is the Settings.XML Document file, it is located at the root of the Decisions Services Manager Folder. This file contains all of the Decisions settings in XML format, which can be modified with a text editor. Some of these settings include enabling a hosted environment, changing recorded log types, configuring the mail settings, port settings, and much more!
Decisions Services Manager Watcher
The Decisions Services Manager Watcher Folder is home to several files and Folders pertaining to the function of the Decisions Services Watcher itself. The Service Host Manager Watcher is responsible for attempting to restart Service Host Manager if it were to stop running.
These Folders contain logs for the watcher, temp file compiler functions, and several different .dll files that are used with the core code-base function of the Services Watcher.
Decisions Web Host
The Decisions Web Host Folder is home to several files and Folders that pertain to the function of Decisions as a Web Application, which could include anything from integrating third-party application programming interfaces to custom CSS or LESS files.
Folder Name | Description |
---|---|
API | Contains the web.config file for the Decisions application programming interface (API) integration. |
Bin | Contains most of the core Decisions web host .dll files. These files are compiled code written in C# and are application dependencies for the Decisions platform. |
css | Contains the fonts, images, and login_css Folder, where CSS files for default Decisions styling are located. Custom CSS and LESS files can be added here for use within the environment; whether it is on a front-end Form or the UI of the actual environment itself. |
CustomLogin | Used to store a custom login page. If a custom login page is used, the file name must be changed to Login.aspx and added here to replace the default login page. Only one .aspx file should be present in the Folder. |
Handlers | This Folder contains some ASHX files, which are webpages part of an ASP.NET web server application. |
HUI | HUI is the user interface Folder that houses most of the UI elements for the Decisions environment. |
js | Used to store JavaScript files that interact with the environment. |
File Storage
The FileStorageLocation is set to empty by default in the Settings.xml and will have Decisions default to saving files (used as a file reference) to that local server in C:\Program Files\Decisions\FileStorage. Since the File Storage Location is set in the Settings.xml file using the <FileStorageLocation> tag, this location will be referred to as <FileStorageLocation> throughout this section.
Please note that the Instance Name will now be included in the directory structure. This will be “Primary” for non-Multi-Tenant instances and the Tenant Name for each Tenant. This will be referred to as <InstanceName> throughout this section.
In previous versions of Decisions, files were stored in the following places.
Temporary Files
- <FileStorageLocation>\dd-mm-YYYY
Where dd-mm-YYYY is the date the file was created.
- <FileStorageLocation>\<InstanceName>\temp\dd-mm-YYYY
As of 6.12.1 the directory structure was slightly changed to the above.
Files Associated with Flows
- <FileStorageLocation>\dd-mm-YYYY
- <FileStorageLocation>\FlowData\dd-mm-YYYY
- <FileStorageLocation>\<InstanceName>\FlowData\dd-mm-YYYY
As of 6.10.0 the directory structure was slightly changed to the above.
Files Associated with Assignments
- <FileStorageLocation>\dd-mm-YYYY
- <FileStorageLocation>\FlowData\dd-mm-YYYY
- <FileStorageLocation>\<InstanceName>\FlowData\dd-mm-YYYY
As of 6.10.0 the directory structure was slightly changed to the above.
Files Associated with Entities
- <FileStorageLocation>\dd-mm-YYYY
- <FileStorageLocation>\FlowData\dd-mm-YYYY
- <FileStorageLocation>\<InstanceName>\FlowData\dd-mm-YYYY
As of 6.10.0 the directory structure was slightly changed to the above.
Archived Files
This directory did not exist prior to version 6.10.0
- <FileStorageLocation>\<InstanceName>\archive\dd-mm-YYYY
- <FileStorageLocation>\<InstanceName>\archive\dd-mm-YYYY\files-to-check
Archive Folder
By default, Files contained within the FileStorage Folder are archived daily after a set amount of time. Upon archival, they are stored at C:\\Program Files\Decisions\FileStorage\Primary\archive.
However, these Files are not cleared without additional configuration.
Clearing Archived Files
To configure the Archive Folder to clear after set period, users must adjust the ArchiveSettings under System > Settings in the Decisions Studio.
Upon opening the Archive Settings, users must select ADD under ARCHIVE SETTINGS FOR TYPES, search for DecisionsFramework.Design.Flow.Service.Execution.FlowStateStorageData under Type Name, define the desired number of Days, click OK, and SAVE.
File Storage v.6.15+
Files stored in installations v.6.15+ exist under a named-based Directory Structure. Files are stored based on the first 2 characters of the file name, which in almost all cases will start with a GUID. For example: 5a4154e9-c0ce-49bb-83ed-1db7524c8d61_test.txt. This is expressed as the \5\a in \temp\5\a in the examples below.
Such changes in the naming convention allow the following:
- Create a new indexed Directory Structure.
- Move existing files to the new Directory Structure, and attach them to entities.
- Clean up temporary files and archive files no longer being used.
- Put new files in the appropriate place, attach them to entities as they become used, and move them as needed instead of duplicating them.
- A new File Archiving strategy tied to the existing Archiving Process.
New Core Directory Structure
- <FileStorageLocation>\<InstanceName>
- \archive
- \files-to-check
- \36 directories (0-9) and (a-z)
- \36 directories (0-9) and (a-z)
- \archive
- \FlowData
- \36 directories (0-9) and (a-z)
- \36 directories (0-9) and (a-z)
- \36 directories (0-9) and (a-z)
- \temp
- \36 directories (0-9) and (a-z)
New Temporary Files
- <FileStorageLocation>\<InstanceName>\temp\?\?
- <FileStorageLocation>\<InstanceName>\temp\5\a
New Files Associated with Flows
- <FileStorageLocation>\<InstanceName>\FlowData\?\?
- <FileStorageLocation>\<InstanceName>\FlowData\5\a
New Files Associated with Assignments
- <FileStorageLocation>\<InstanceName>\FlowData\?\?
- <FileStorageLocation>\<InstanceName>\FlowData\5\a
New Files Associated with Entities
- <FileStorageLocation>\<InstanceName>\FlowData\?\?
- <FileStorageLocation>\<InstanceName>\FlowData\5\a
New Archived Files
- <FileStorageLocation>\<InstanceName>\archive\?\?
- <FileStorageLocation>\<InstanceName>\archive\files-to-check
- <FileStorageLocation>\<InstanceName>\archive\5\a
In a Clustered environment, the settings Should be configured to have all Servers in a Cluster point to the same shared Folder Path. In this case, these Servers need access to the Shared Folder through a Service Account that has access to this Path.
To setup a Service Account for Decisions:
- Open Windows Services right-click Service Host Manage and select Properties.
- When the window appears, select the Log On tab.
- From the Log On Page specify the Account to run Decisions (or the Service Account).Additional InformationAfter this has been configured for all of the Clustered Servers, these Servers should now have the ability to access the same files saved here.
Images
This Folder contains all of the icons and thumbnails that can be used to style different aspects of Designer Elements in Decisions.
The Folder also contains a .zip file of the icons used in the environment. Custom Icons that meet the appropriate size and format criteria can be added to this Folder for use in the environment.