Set-SqlErrorLog

Sets or resets the maximum number of error log files before they are recycled.

Syntax

Set-SqlErrorLog [[-Path] <String>] [-MaxLogCount <UInt16>] [-Script] [-InformationAction <ActionPreference>]
 [-InformationVariable <String>] [<CommonParameters>]
Set-SqlErrorLog [[-ServerInstance] <String[]>] [-MaxLogCount <UInt16>] [-Script]
 [-InformationAction <ActionPreference>] [-InformationVariable <String>] [-Credential <PSCredential>]
 [-ConnectionTimeout <Int32>] [<CommonParameters>]
Set-SqlErrorLog [-InputObject] <Server> [-MaxLogCount <UInt16>] [-Script]
 [-InformationAction <ActionPreference>] [-InformationVariable <String>] [<CommonParameters>]

Description

The Set-SqlErrorLog cmdlet sets or resets the maximum number of error log files before they are recycled.

This cmdlet supports the following modes of operation to set logs:

- Pass the instance of the SQL Server.

  • Specify the Path parameter of the SQL Server instance.
  • Invoke the cmdlet in a valid context.

Examples

Example 1: Set the maximum number or error logs

PS C:\> Set-SqlErrorLog -ServerInstance "MyServer\MyInstance" -MaxLogCount 11 | Out-Null

This command sets the maximum number of error log files to 11.

Example 2: Return the T-SQL script code to set the maximum number or error logs

PS C:\> Set-SqlErrorLog -ServerInstance "MyServer\MyInstance" -MaxLogCount 11 -Script
USE [master] 
GO
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'NumErrorLogs', REG_DWORD, 10
GO

This command returns the T-SQL script code, as a string array, that is needed to set the maximum number of error log files to 11.

Parameters

-MaxLogCount

Specifies the maximum number of error log files. If the value is not specified, the cmdlet resets the value to the default.

The allowed range of values are between 6 and 99.

Type:UInt16
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Path

Specifies the path to the instance of SQL Server on which this cmdlet runs the operation. If you do not specify a value for this parameter, the cmdlet uses the working location.

Type:String
Required:False
Position:1
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Script

Indicates that this cmdlet returns a Transact-SQL script that performs the task that this cmdlet performs.

Type:SwitchParameter
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-InformationAction

Specifies how this cmdlet responds to an information event.

The acceptable values for this parameter are:

- Continue

  • Ignore
  • Inquire
  • SilentlyContinue
  • Stop
  • Suspend

Type:ActionPreference
Aliases:infa
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-InformationVariable

Specifies an information variable.

Type:String
Aliases:iv
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ServerInstance

Specifies, as a string array, the name of an instance of SQL Server. For default instances, only specify the computer name: MyComputer. For named instances, use the format ComputerName\InstanceName.

Type:String[]
Required:False
Position:1
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False
-Credential

Specifies a PSCredential object used to specify the credentials for a SQL Server login that has permission to perform this operation.

Type:PSCredential
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ConnectionTimeout

Specifies the number of seconds to wait for a server connection before a time-out failure. The time-out value must be an integer value between 0 and 65534. If 0 is specified, connection attempts do not time out.

Type:Int32
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-InputObject

Specifies the server object of the target instance.

Type:Server
Required:True
Position:1
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False

Notes

* If the value on the server is already set to the value specified, this cmdlet does not do anything.