Blue Prism Logging Best Practices Guide
User Manual:
Open the PDF directly: View PDF .
Page Count: 12
Download | |
Open PDF In Browser | View PDF |
Blue Prism LOGGING BEST PRACTICES GUIDE Version: 1.0 For more information please contact: info@blueprism.com | UK: +44 (0) 870 879 3000 | US: +1 888 7577476 www.blueprism.com Revision History Date Revision Author Description The information contained in this document is the proprietary and confidential information of Blue Prism Limited and should not be disclosed to a third party without the written consent of an authorised Blue Prism representative. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying without the written permission of Blue Prism Limited © Blue Prism Limited, 2001 - 2018 All trademarks are hereby acknowledged and are used to the benefit of their respective owners. Blue Prism is not responsible for the content of external websites referenced by this document. Blue Prism Limited, Centrix House, Crow Lane East, Newton-le-Willows, WA12 9UY, United Kingdom Registered in England: Reg. No. 4260035. Tel: +44 870 879 3000. Web: www.blueprism.com Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 2 of 12 Contents 1. Introduction ..........................................................................................................................................................4 2. Log settings ...........................................................................................................................................................4 2.1. Object: stage logging options ......................................................................................................................4 2.2. Process: stage logging options ....................................................................................................................5 2.3. Runtime Resource Logging Levels ...............................................................................................................6 2.4. Unicode Logging..........................................................................................................................................7 2.5. Log Viewer ..................................................................................................................................................8 3. Best Practice .........................................................................................................................................................9 3.1. General recommendations .........................................................................................................................9 3.2. Security Policy ...........................................................................................................................................10 3.3. Development vs UAT/Production..............................................................................................................11 3.4. Database monitoring ................................................................................................................................11 3.5. Logging Configuration Policy .....................................................................................................................12 3.6. Archive and Backup Policy ........................................................................................................................12 4. Potential Issues ...................................................................................................................................................12 Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 3 of 12 1. Introduction This document outlines the best practices on logging settings on stages in processes and objects. The decision as to which stages are logged and which are not should never be overlooked. A conscious use of the logging settings is key to prevent and resolve database, performance and archiving problems, as well as to address sensitive data policies. 2. Log settings By default, stages used in Process Studio are logged and those in Object Studio are not. This can easily be changed by modifying the properties of a stage, selection of stages or all stages. Nearly all stage properties windows have a combo box with the stage logging options: • Enabled • Disabled • Errors Only Errors only will log the stage only if an error is thrown when the stage runs. Alternatively, the menu commands Edit > Selected Stages > and Edit > All Stages can be used to modify the stage logging of more than one stage at a time. Page information stages are not logged, and Data Items are only logged when their values are used as inputs and outputs. 2.1. Object: stage logging options Each stage within an Object can be set to one of the following levels: • Enabled - the stage name and actions will be logged • Disabled - no information about the stage's activity will be logged • Errors Only - no information will be logged unless the actions produce an error condition Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 4 of 12 To quickly set all stages within an Object to be Disabled you can open the Object and choose the option Edit -> All Stages -> Disabled. This will set logging for all stages within all pages within the Object to be disabled. 2.2. Process: stage logging options Each stage within a Process can be set to one of the following levels: • Enabled - the stage name and actions will be logged • Disabled - no information about the stage's activity will be logged • Errors Only - no information will be logged unless the actions produce an error condition • Don't log parameters on this stage - toggles logging of data parameters used by the stage on or off (e.g. business data) Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 5 of 12 Stage logging can be easily switched on, off or to errors only in the same way as with an Object, i.e. using Edit -> All Stages. Note: It is not possible to disable parameter logging for all stages using this method. This setting must be set on each stage individually. It is therefore very important that each stage's parameter data implications should be assessed before any Process goes into Production where there is the potential for recording business data in the Blue Prism logging tables. 2.3. Runtime Resource Logging Levels It is possible to override the logging in a process or object and set the logging at machine level, where each Runtime Resource can have its own logging level defined. This is achieved using the Resources -> Management screen, where a context menu option is provided to set Runtime Resource Logging Level options. The basic logging level options are: • Default - Logs any stages have Stage Logging set to 'Enabled' in the Process or Object which the Runtime Resource is running. Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 6 of 12 • All Stages - Logs all stages regardless of which stages specifically have Stage Logging set to 'Enabled'. Note this may slow down operation of any Processes run by the Runtime Resource and will result in fuller logs. However this may be useful in diagnosing problems. • Key Stages - Overrides only the following stages: o Action, Code, Navigate, Process, Read, Write, WaitStart regardless of which stages specifically have Stage Logging set to 'Enabled'. Memory Logging Using the same context menu, it is possible to record the memory levels of a machine in the session logs. • Log Memory Usage - if enabled, all process log entries are accompanied by a record of how much memory (Working Set) was in use by the main Blue Prism executable at the time. Additionally, if the logged action refers to a target application, the identity and memory usage of that target application is also recorded. • Include Memory Cleanup - enabling this may produce more useful figures when diagnosing suspected memory leak issues. Web Service logging Web service details can also be added to the logs via the context menu. • Log Web Service Communication - enabling this causes low-level web service communication to be logged specifically, SOAP messages are logged in full detail. For consumed web services, the information is logged as part of the corresponding session log. For exposed web services, it is logged in the event log for the relevant Resource PC. Note: If a Runtime Resource is online when its diagnostics settings are changed, it does not need to be restarted for the new settings to take effect. It will pick up and begin using the modified settings within two minutes at the most. 2.4. Unicode Logging In Blue Prism, errors are logged in Non-Unicode format by default. Unicode logging can be enabled using the System Settings with the following option: Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 7 of 12 Note: It is generally not recommended to use Unicode, however, there are some instances where it will be required (i.e. logging text containing non-standard characters like logographic or symbols). 2.5. Log Viewer Whenever a Process runs, it makes a record of each step it takes to create a Session Log. You can access this log from Control Room: • Select one of the Session rows in the Environment list in Control Room. • Right-click to open the mouse menu and select View Log. or from System > Audit section. The Log Viewer is used to inspect the log of a session, either as it is running or after it has finished. This is especially handy for reviewing the workings of a progress and tracking down problems. The Log Viewer has a search function enabling you to look through the (often numerous) rows of a log and the visibility of columns can be configured to suit. Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 8 of 12 Logs can be displayed in Grid or List view type. The Search function helps to find and highlight keywords and text analysing all or only specific columns. 3. Best Practice The decision as to which stages are logged and which are not should not be overlooked: • Logs are particularly useful during a test phase as a means to investigate bugs. • However, a live Process running all day can put a vast amount of data into the database, the maintenance and back up of which should be considered. • The security or legal implications of storing sensitive data are also something to think about. Note: When Blue Prism Processes are run by Runtime Resources then they log information into the Blue Prism database. Over time, and if not regularly monitored and maintained, then the amount of data can get prohibitively large, potentially affecting the performance of the product and leading to an inability to establish a reliable automatic archiving function within the Blue Prism product. 3.1. • General recommendations Logging for stages within an Object should only be enabled during the development phases of a Blue Prism implementation. Logging Objects is not recommended for Production systems. Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 9 of 12 • Logging for stages within a Process can be enabled to whatever level is required to support debugging and tracing during Development phases, or for auditing and reporting purposes when the Processes are deployed in a Production environment. The level required will be determined by Blue Prism developers in Development and Testing phases, and by the business requirements in Production. • Often a usable audit trail can be created by turning on logging only for the following stages within a Process: • • • 3.2. o All decision stages o All choice stages o All Errors o Work Queue – Get Next Item Turn off logging anywhere that might generate large amounts of log data. Look for: o Loops which use large data sets o Stages with lots of input or output parameters Some Data Item data types logged with parameter logging will consume larger amounts of disk space: o Collections - especially nested Collections o Markup for formatted text - for example, JSON data, decoded HTML web pages, or large XML strings o Text – large strings of more than 4000 characters in one Data Item o Images - pictures uploaded into Data Items. Lossless image formats will store more data. o Binary - strings of binary data Avoid running processes 24x7 and instead configure them to stop at least once every 24 hour period. This will avoid creating a huge single log that later cannot be archived by normal means. There are very few business requirements that cannot afford a few minutes of downtime each day, and if abolutely necessary a process could be designed so that each resource took its ‘rest’ at a different time. Security Policy Care should be taken during design and development to ensure that data protection policies (i.e. PCI compliance) are kept to by the Blue Prism solution. Logging should only be turned on to the minimum levels required to support the process and trace case routes and outcomes. For example, case IDs or customer IDs may be logged, but personal client information should never be logged. Blue Prism recommends reducing the logged stages to a minimum level and to ensure that no client data is logged as part of that. One method of ensuring this is to check that the option "Don't log parameters on this stage" is checked for all stages which may contain sensitive data. Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 10 of 12 3.3. Development vs UAT/Production When making the move from a Development or Test environments to one of User Acceptance Testing (UAT), PreProduction or Production environments then there is a definite and necessary change required in the logging levels for the Processes and Objects. Blue Prism recommendation for moving into UAT, Pre-Prod or Production is to ensure the following: • All stages within all Objects should be set to DISABLED, or ERRORS ONLY (if necessary) • All stages within all Processes should be set to DISABLED or ERRORS ONLY, except for o Work Queue item 'Get Next Item' actions, if the queue item is not holding sensitive data. o Enable logging for all Decision and Choice stages within the Process ▪ Logging for all Decision and Choice stages could be required only on the Main page if the process is based on a BP templates. Only Errors logging should be sufficient for all the other pages. • All stages within all Processes should have parameter logging set to DISABLED • Runtime Resources running Production processes should be set to log DEFAULT or KEY STAGES only • It’s common practice to reduce production logging over time, e.g. on the first day of go-live logging levels are left high to facilitate audit of the ‘soft launch’ period. As the process settles down the logging is decreased, e.g. week 1 at 100%, week 2 at 50% etc. • Periodically run a ‘health check’ on the production environemnt. Logging settings might change after the implementation of a CR and then inadvertently left enabled at high level. 3.4. Database monitoring Blue Prism stores log details on the database in the [BPASessionLog_NonUnicode] or [BPASessionLog_Unicode] tables. Monitoring and auditing of these tables through third-party tools is allowed (verify you have the correct permissions to access the required table), however, please note, DB speed could be impacted by doing so. Database Administrators can assist with the upfront and on-going assessment of the amount of disk space which your Blue Prism database may require. Monitoring the size of how much data is created for each Process in terms of the number of rows and space used by that data will form the basis for understanding: • What size of disk is needed to support the data volumes in SQL Server during development phases. • SQL Server TempDB database size: managing maintenance operations on large tables is recommended. • How to configure Blue Prism's automatic archiving of log data and how to define an Archive and Backup policy. Please refer to the Maintaining a Blue Prism Database Server data sheet available on the Blue Prism portal under the area: Release specific documentation -> Infrastructure and Installation as a guide for maintenance of a Blue Prism database. Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 11 of 12 3.5. Logging Configuration Policy Blue Prism provides a template document to help customers to assess and record the logging configuration and policy. See the Documents section of the Portal. 3.6. Archive and Backup Policy A sensible archive strategy will allow the production database size to be kept to a minimum whilst still allowing retrieval of log files, should business units require them. Backing up production process and objects will provide some resilience to database failure for business-critical processes. Blue Prism provides a template document to help customers to assess and record this kind of operational task. See the Documents section of the Portal under the area: Robotic Operating Model -> Technical and Security -> Database Administration -> Archive and Backup Policy template. 4. Potential Issues Potential issues arising from unduly large volumes of logging data are as follows: • The database performance degrades and the general speed of running Processes also suffers. • Database queries time out, recording timeout-related errors in the Event Logs and causing Processes to fail. • Archiving fails to complete, only archiving small amounts of data when larger volumes were selected. • Automatic archiving is blocked by an overly large log that cannot be moved due to its size. Commercial in Confidence ®Blue Prism is a registered trademark of Blue Prism Limited Page 12 of 12
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.7 Linearized : No Page Count : 12 Language : en-US Tagged PDF : Yes XMP Toolkit : 3.1-701 Producer : Microsoft® Word 2016 Title : Blue Prism Creator : luca valente Creator Tool : Microsoft® Word 2016 Create Date : 2018:03:14 11:13:01-05:00 Modify Date : 2018:03:14 11:13:01-05:00 Document ID : uuid:7BDE6335-CCD5-4BDD-BDE7-7233C6DFF436 Instance ID : uuid:7BDE6335-CCD5-4BDD-BDE7-7233C6DFF436 Author : luca valente Keywords : Version:, 1.0EXIF Metadata provided by EXIF.tools