[This is preliminary documentation and is subject to change. Blank topics are included as placeholders.]

Updates the logging settings used by the Device Update Service. Device Update Service stores device logs and update logs, which you can use to track updates and devices, and troubleshoot problems.

Syntax

Set-CsDeviceUpdateConfiguration [-Identity <XdsIdentity>] [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-LogCleanUpInterval <TimeSpan>] [-LogCleanUpTimeOfDay <Nullable>] [-LogFlushInterval <TimeSpan>] [-MaxLogCacheLimit <UInt32>] [-MaxLogFileSize <UInt32>] [-ValidLogFileExtensions <PSListModifier>] [-ValidLogFileTypes <PSListModifier>] [-WhatIf [<SwitchParameter>]]
Set-CsDeviceUpdateConfiguration [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-Instance <PSObject>] [-LogCleanUpInterval <TimeSpan>] [-LogCleanUpTimeOfDay <Nullable>] [-LogFlushInterval <TimeSpan>] [-MaxLogCacheLimit <UInt32>] [-MaxLogFileSize <UInt32>] [-ValidLogFileExtensions <PSListModifier>] [-ValidLogFileTypes <PSListModifier>] [-WhatIf [<SwitchParameter>]]

Parameters

Parameter Required Type Description

Identity

Optional

XdsIdentity

Indicates the Identity of the device update configuration settings to be modified. To refer to the global settings, use this syntax: -Identity global. To refer to site settings, use syntax similar to this: -Identity site:Redmond. Note that you cannot use wildcards when specifying an Identity.

Instance

Optional

DeviceUpdateSettings object

Allows you to pass a reference to an object to the cmdlet rather than set individual parameter values.

LogCleanUpInterval

Optional

Timespan

Specifies the amount of time a device update log file is kept before it is deleted by the system.

The value must be entered in the format dd.hh:mm:ss where d is days, h is hours, m is minutes, and s is seconds. To enter only days, you must follow the value with a period (.).

Minimum Value: 1.00:00:00 (1 Day)

Maximum Value: 365.00:00:00 (1 Year)

Default: 10.00:00:00 (10 Days)

LogCleanUpTimeOfDay

Optional

DateTime

Indicates the time of day when the system checks to see if there are any expired log files that should be deleted. ("Expired" log files are any files older than the value specified in by the LogCleanupInterval property.)

The value passed to the -LogCleanupTimeOfDay parameter should be in the 24-hour time format hh:mm, where hh represents the hours and mm represents the minutes. In this format, midnight is represented as 00:00; 8:30 AM is represented as 08:30; and 11:52 PM is represented as 23:52.

LogFlushInterval

Optional

TimeSpan

Indicates how often information stored in the log file cache is written to the actual log file. By default, device update information is not immediately written to the log file; instead, that information is cached until memory until: 1) the log flush time interval has expired; or, 2) the cache has reached its maximum size. If this value is set to 10 minutes (00:10:00) then information in the cache will be written to the log file every 10 minutes. After the data has been logged the cache will be cleared.

The value must be entered in the format hh:mm:ss where h is hours, m is minutes, and s is seconds.

Minimum Value: 00:01:00 (1 minute)

Maximum Value: 1:00:00 (1 hour)

Default: 00:05:00

MaxLogCacheLimit

Optional

Integer

Indicates the maximum amount of information (in bytes) that can held in the log file cache before that cache must be cleared and the data written to a log file. By default, log files are "flushed" every X number of minutes. (See the description of the parameter -LogFlushInterval for more information.) However, if the cache reaches its maximum size the information in it will automatically be written to a log file (and the cache cleared) even if the log flush interval has not yet expired.

Default: 512000

MaxLogFileSize

Optional

Integer

Indicates the maximum size, in bytes, for an individual log file. When a file reaches the maximum size the next batch of data is automatically written to a new log file. The old log file will be retained until the log cleanup interval has expired.

Default: 1024000

ValidLogFileExtensions

Optional

PSListModifier

Indicates the valid log file extensions that can be used with the device update service. This list can be modified; however, there is no reason to modify the list unless you have a Microsoft Communicator Phone Edition device that creates log files that use a different file extension.

Default: .dmp, .clg, .clg2, .bak, .kdmp, .dat, .bin, .cat, .xml, .txt, .hex

ValidLogFileTypes

Optional

PSListModifier

Indicates the log file types retained by the device update system. The default file types include the following:

Watson. Log files automatically generated by a device in the event of a system crash.

Config. RoundTable device profiles that are created any time you configure a RoundTable conferencing station.

DiagLog. Self-diagnostic data for RoundTable conferencing stations.

CELog. Communicator Phone logs that contain the results of functional tests as well as a record of critical system events.

Additional file types can be added if you have a Microsoft Communicator Phone Edition device that creates a different kind of log file. You can also remove file. For example, if you do not want to store CELog files then you can remove the CELog file type.

Force

Optional

Switch Parameter

Suppresses the display of any non-fatal error message that might arise when running the command.

Confirm

Optional

Switch Parameter

Prompts you for confirmation before executing the command.

WhatIf

Optional

Switch Parameter

Describes what would happen if you executed the command without actually executing the command.

Detailed Description

The device update service provides a way for administrators to distribute firmware updates to devices (such as Tanjay phones and Roundtable conference stations) that run Microsoft Communicator “14” Phone Edition. Periodically, administrators upload a set of device update rules to Microsoft Communications Server; after those rules have been tested and approved, they are then automatically downloaded and applied to the appropriate devices as those devices connect to the system. The device update system itself is managed by using the CsDeviceUpdateConfiguration cmdlets.

Device update configuration settings can be applied at either the global or the site scope. The Set-CsDeviceUpdateConfiguration cmdlet enables you to make changes to a collection of settings (for example, if you want to change the length of time a log file is kept before it is automatically deleted by the system).

Input Types

Return Types

Set-CsDeviceUpdateConfiguration does not return a value or object. Instead, the cmdlet configures instances of the Microsoft.Rtc.Management.WriteableConfig.Settings.DeviceUpdate.DeviceUpdateConfiguration object.

Examples

-------------------------- Example 1 --------------------------

Copy Code
Set-CsDeviceUpdateConfiguration -Identity global -MaxLogFileSize 2048000 -MaxLogCacheLimit 1024000

Example 1 shows how Set-CsDeviceUpdateConfiguration can be used to modify the global configuration settings. In this case, two property values are modified: the MaxLogFileSize property is set to 2048000 bytes and the MaxLogCacheLimit property is set to 1024000 bytes.

-------------------------- Example 2 --------------------------

Copy Code
Set-CsDeviceUpdateConfiguration -Identity site:Redmond -LogFlushInterval 00:02:00

The preceding command modifies the LogFlushInterval property for the device update configuration settings with the Identity site:Redmond. To do this, the -Identity parameter is used to specify the settings at the Redmond site and the -LogFlushInterval parameter is used to indicate the property value that be changed. In this case, the LogFlushInterval is set to 2 minutes (00 hours: 02 minutes: 00 seconds).

-------------------------- Example 3 --------------------------

Copy Code
Set-CsDeviceUpdateConfiguration | -LogCleanUpInterval 14.00:00:00

In Example 3, all of the device configuration update settings in the organization are modified in order to set the LogCleanUpInterval to 14 days. To do this, Get-CsDeviceUpdateConfiguration is first used to retrieve a collection of all the device update configuration settings. This collection is then piped to Set-CsDeviceUpdateConfiguration, which uses the -LogCleanUpInterval parameter to set the log clean up interval time for each item in the collection to 14 days (14 days : 00 hours : 00 minutes : 00 seconds).

-------------------------- Example 4 --------------------------

Copy Code
Get-CsDeviceUpdateConfiguration -Filter "site:*" | Set-CsDeviceUpdateConfiguration -LogCleanUpInterval 20.00:00:00

Example 4 demonstrates how you can modify a property value for all the device update configuration settings that have been configured at the site scope; in this case, the command sets the LogCleanUpInterval to 20 days (20 days : 00 hours : 00 minutes : 00 seconds). In order to carry out this task, the Get-CsDeviceUpdateConfiguration cmdlet is used along with the –Filter parameter; the filter value "site:*" limits the returned data to settings that have an Identity that begins with the string value "site:". This filtered collection is then piped to Set-CsDeviceUpdateConfiguration, which changes the value of the log cleanup interval for each item in the collection.

-------------------------- Example 5 --------------------------

Copy Code
Get-CsDeviceUpdateConfiguration | Set-CsDeviceUpdateConfiguration -ValidLogFileTypes @{Remove="CELog"}

The preceding command removes CELog from the list of valid log file types used by the device update configuration settings. In this command, Get-CsDeviceUpdateConfiguration is first used to retrieve a collection of all the device update configuration settings currently in use in the organization. That collection is then piped to Set-CsDeviceUpdateConfiguration, which uses the -ValidLogFileTypes parameter in order to remove CELog from the list of valid log file types. The parameter value passed to -ValidLogFileTypes -- @{Remove="CELog"} -- instructs Windows PowerShell to remove CELog from the set of valid file types. To remove multiple files types in a single command, simply include the additional types as part of a comma-separated list. For example:

@{Remove="CELog","Watson"}