Advanced SilhouetteCentral Web Application Configuration
There are a number of web application settings available in the <Main Application Directory>\Files\Settings\machinesettings.xml file. In most installations there is no need to adjust the Web Application settings.
Any adjustments to the MachineSettings file should be made with care and by first taking a copy of the original settings. If an invalid file or invalid settings are detected, the initial SilhouetteCentral setup wizard is displayed when accessing the web site.
Changes to the application settings in the machinesettings.xml are only applied when the associated SilhouetteCentral application pool is recycled.
Patient Assessment Data File Location
By default, SilhouetteCentral stores patient images and report files in the Files\Data folder under the main web application folder. The location of this Data folder may be altered by updating the DataDirectory property in the MachineSettings configuration file. This allows the data to be stored in a different location to the SilhouetteCentral application files. This can be either a local directory or a UNC file share.
Before changing this setting, consider moving the entire web application folder using IIS configuration.
As an example updating the setting within machinesettings.xml as follows would store patient images and reports in the D:\Silhouette\Data folder.
<DataDirectory>D:/Silhouette/Data</DataDirectory>
![]() |
Changing this setting does not transfer any existing images and reports to the new location. To change this setting:
|
SilhouetteConnect Synchronization Related Settings
Synchronization Database Configuration
The connection string used by SilhouetteCentral to connect to the synchronization SQL Server instance can be customized in the MachineSettings configuration file.
<SilhouetteConnectDatabaseInstanceConnectionString>Data Source=.\Silhouette;Integrated Security=SSPI;</SilhouetteConnectDatabaseInstanceConnectionString>
Note that the example above assumes that the SQL Server is set to force encryption on and that the SilhouetteCentral server is already configured to trust the CA used for the encryption certificate. If SQL Server fallback encryption (self-signed certificates) are being used then the properties Encrypt=True;TrustServerCertificate=True can be added to the connection string.
Number of days to keep SilhouetteConnect databases
SilhouetteCentral keeps an archived copy of the SilhouetteConnect database when it is uploaded during a synchronization. The SilhouetteConnect database copies are only kept for 10 days by default and are then deleted. The number of days the databases are kept can be customized in the MachineSettings configuration file with a minimum of 1 day.
<DaysToKeepArchivedConnectDatabases>10</DaysToKeepArchivedConnectDatabases>
Temporary Storage
![]() |
Modifying the temporary storage directories doesn't move or clean up the old directory. Clean up must be done manually. |
![]() |
The Email Attachment and Data Export temporary storage contains patient information. Ensure these directories are adequately protected against unauthorized access. |
Email Attachment Storage
If emails are configured to be sent with attached PDF reports, these reports are generated and stored on the file system.
<EmailAttachmentsDirectory>~/Files/Data/EmailAttachments</EmailAttachmentsDirectory>
Data exports file location
This setting tells where on the file setting to create and store data exports before they are downloaded.
<DefaultAssessmentExportDirectory>~/Files/Data/Exports</DefaultAssessmentExportDirectory>
System Events, Email, and Integration Event Application Settings
When using the automatic assessment email or the integration event features there are a number of settings that can be adjusted in the MachineSettings configuration file.
System Event Queue Processing
The following settings allow the period of the System Event processing job and how many system events will be processed in one go. If the email log shows that the system event job is commonly taking more than 30 seconds to run, you should consider reducing the batch size. The batch size given in the configuration is per system event type (assessment create and assessment update).
<ProcessAssessmentSystemEventsCronSchedule>* * * * *</ProcessAssessmentSystemEventsCronSchedule>
<ProcessAssessmentSystemEventsBatchSize>1000</ProcessAssessmentSystemEventsBatchSize>
Email Queue Processing
The email queue processing settings allow you to control how many emails will be attempted in any one period (the period is set by the System Event Queue Processing settings) and how many emails are sent concurrently. These settings may need to be adjusted to fit within sending limits of the SMTP service being used.
<ProcessEmailQueueMaximumNumberOfEmailsToSendPerJob>20</ProcessEmailQueueMaximumNumberOfEmailsToSendPerJob>
<ProcessEmailQueueMaximumNumberOfEmailsToSendConcurrently>5</ProcessEmailQueueMaximumNumberOfEmailsToSendConcurrently>
The maximum age for an email in the queue is also adjustable. Any emails still pending after they have been in the queue for more than the maximum age are not sent.
<ProcessEmailQueueMaximumAgeOfEmailsInDays>10</ProcessEmailQueueMaximumAgeOfEmailsInDays>
Integration Event Queue Processing
The integration event queue processing settings allow you to control how many pending integration events are forwarded to the integration engine in any given period (the period is set by the System Event Queue Processing settings). Typically, the sending of integration events causes more traffic to SilhouetteCentral as the integration engine gets report content and data.
<ProcessIntegrationQueueMaximumNumberOfEventsToSendPerJob>25</ProcessIntegrationQueueMaximumNumberOfEventsToSendPerJob>
Purging System Events and Email Queue
The system event queue and email queue are stored in the database. Silhouette has a daily job that removes old emails and system events. The configuration can be adjusted if there is a reason to keep data for longer.
<PurgeEmailAndSystemEventsIsEnabled>true</PurgeEmailAndSystemEventsIsEnabled>
<PurgeEmailAndSystemEventsCronSchedule>0 1 * * *</PurgeEmailAndSystemEventsCronSchedule>
<PurgeEmailAndSystemEventsBatchSize>500</PurgeEmailAndSystemEventsBatchSize>
The minimum age of an item to be purged can be set from 35 to 400 days. Setting a value outside of this range causes the default of 35 days to be used.
<PurgeEmailAndSystemEventsMinimumAgeInDays>35</PurgeEmailAndSystemEventsMinimumAgeInDays>
Assessment Data Export Related Settings
Days to keep data exports
This setting controls how long Silhouette keeps data exports after they are created. Valid settings are from 1 to 7 days. Any non-valid setting will cause the default of 3 to be used.
<MaximumAgeOfExportedDataInDays>3</MaximumAgeOfExportedDataInDays>
File clean up schedule
The file clean up schedule controls when the job which cleans up Synchronized SilhouetteConnect databases and expired data exports is run.
<CleanUpFilesCronSchedule>0 0 * * *</CleanUpFilesCronSchedule>
Inactive SSO User Expiry
Single-Sign-On (SSO) user records are created in the system as they sign-in (JIT provisioning). Silhouette expires (deletes) these JIT provisioned records if the user does not use the system for a number of days based on the following settings. Valid expiry days setting is from 32 to 365 days. Any non-valid setting will cause the default of 90 to be used.
<InactiveUserExpirationDays>90</InactiveUserExpirationDays>
<DeleteInactiveUserCronSchedule>30 1 * * *</DeleteInactiveUserCronSchedule>
The minimum expiry of 32 days is chosen to prevent conflicts with the SilhouetteConnect Maximum Offline Session Time (hrs) as deleting a user account in SilhouetteCentral that is still being used in SilhouetteConnect may cause unnecessary synchronization errors.