Changes to Configuring Retail Pro Prism Logging in Versions 1.14.7 and Above
In previous Retail Pro Prism versions, the logging was configured by either manually editing the Prism service INI file or by using the Prism TechToolKit.exe.
For Retail Pro Prism versions 1.14.7 and above, logging will be configured using the Web Tech Toolkit.
PrismLogging.ini is used for all log settings - How it Works
All log settings are located in PrismLogging.ini. This file is created in server\conf during the Retail Pro Prism installation for version 1.14.7s or later. Any existing LOG sections in services' config INI's are ignored. The installer does not remove these deprecated LOG settings, but they will be removed when the INI files are updated using Web Tech Toolkit.
PrismLogging.ini has a [global] section containing all log keys. These are used by all services and apps using the Logger unless a different setting has been entered in the file for the service.
The section name for an app or service in the PrismLogging.ini is the base file name of the binary that is using the Logger. So, if a log setting in a service's section differs from the global setting, the service will use the specific setting entered for the service.
When first installed, PrismLogging.ini will have only a [global] section with default log settings. The global values can be edited, or specific service settings can be added & edited, manually or by using Web TTK. These settings cannot be accurately viewed or updated using the native Desktop Prism Tech Toolkit. Native TTK will be removed from Retail Pro Prism installations with the Retail Pro Prism 2.0 release.
Updating PrismLogging.ini with Prism Web Tech Toolkit
- Updates to the settings for a service are made in the Services tool. The LOG settings are displayed grouped with the service's other INI settings, as they were in the native Desktop TTK, even though the LOG settings are maintained not in the service's INI but in a separate PrismLogging.ini. This grouping provides consistency with past UI displays and adds ease of use, rather than separating LOG settings in a separate web form.
- When a change is made to a service's log setting, if that change is different from the existing global setting, Web TTK will create a section for the service in PrismLogging.ini if it does not exist and write the Key / Value pair to the section.
- If the change being made is the same as the existing global setting, the Key / Value pair in the service's section will be removed since the global value will automatically apply without a setting for the service. This is to prevent duplicative clutter in PrimsLogging.ini which would result in a full set of logging keys for numerous services and apps. This is unnecessary, makes it difficult to examine the file to analyze or debug possible logging issues, and requires more time for services to load and read settings.
- As such, in general, PrismLogging.ini will only contain the global settings and the services' exceptions when using Web TTK for updates. There are some instances in which there could be duplication of a service setting with the global value.
Updates to Global Log Settings
- Global settings can be viewed and edited in the Services tool in the "Prism Stack" section.
- Changes to global settings only update the global settings and do not overwrite an existing setting for any service. At this time there is no feature to set all services to the same log setting using a 'global update' process. The global setting will apply to any service or app that does not have the same setting specified in its section, as explained above.
- Changing a global setting to the same value as may be specified for a service will not remove the service's Key / Value pair as would a similar update to the service's setting. This bit of cleanup may be added in a future release.
The following logging levels are supported.
• llNone = 0
No log entries will be written to the log. The log file will not exist.
• llMinimal = 1
Logs only ltError
• llNormal = 2
Logs ltError, ltWarn
• llVerbose = 3
Logs ltError, ltWarn, ltInfo, ltFlow, ltEntry, ltExit
• llDebug = 4
Logs ltError, ltWarn, ltInfo, ltFlow, ltEntry, ltExit, ltDebug