次の方法で共有


SqlErrorLogFile クラス

適用対象:SQL Server

SQL Serverログ ファイルに関する情報を表示するためのプロパティを提供します。

構文

class SQLErrorLogFile
{
    uint32ArchiveNumber;
    stringInstanceName;
    datetimeLastModified;
    uint32LogFileSize;
    stringName;
};

Properties

SQLErrorLogFile クラスは、次のプロパティを定義します。

プロパティ 説明
ArchiveNumber データ型: uint32

アクセスの種類: 読み取り専用

ログ ファイルのアーカイブ番号。
InstanceName データ型: string

アクセスの種類: 読み取り専用

修飾子: キー

ログ ファイルが存在するSQL Serverのインスタンスの名前。
LastModified データ型: datetime

アクセスの種類: 読み取り専用

ログ ファイルの最終変更日。
LogFileSize データ型: uint32

アクセスの種類: 読み取り専用

ログ ファイルのサイズ (バイト単位)。
名前 データ型: string

アクセスの種類: 読み取り専用

修飾子: キー

ログ ファイルの名前。

解説

Type 名前
MOF - sqlmgmprovider.mof(SQL Server 2022 (16.x) 以降のバージョン)
- sqlmgmproviderxpsp2up.mof(SQL Server 2019 (15.x) 以前のバージョン)
[DLL] sqlmgmprovider.dll
名前空間 \root\Microsoft\SqlServer\ComputerManagement10

次の例では、指定した SQL Server インスタンス上のすべてのSQL Serverログ ファイルに関する情報を取得します。 この例を実行するには、Instance_Name> をインスタンスの名前 (例: 'Instance1') に置き換えます<。

on error resume next
set strComputer = "."
set objWMIService = GetObject("winmgmts:\\.\root\Microsoft\SqlServer\ComputerManagement10")
set LogFiles = objWmiService.ExecQuery("SELECT * FROM SqlErrorLogFile WHERE InstanceName = '<Instance_Name>'")
  
For Each logFile in LogFiles
  
WScript.Echo "Instance Name:  " & logFile.InstanceName & vbNewLine _
    & "Log File Name:  " & logFile.Name & vbNewLine _
    & "Archive Number: " & logFile.ArchiveNumber & vbNewLine _
    & "Log File Size:  " & logFile.LogFileSize & " bytes" & vbNewLine _
    & "Last Modified:  " & logFile.LastModified & vbNewLine _
  
Next

コメント

WQL ステートメントで InstanceName が指定されていない場合、クエリは既定のインスタンスの情報を返します。 たとえば、次の WQL ステートメントは、既定のインスタンス (MSSQLSERVER) からすべてのログ ファイルに関する情報を返します。

"SELECT * FROM SqlErrorLogFile"

セキュリティ

WMI を介してSQL Serverログ ファイルに接続するには、ローカル コンピューターとリモート コンピューターの両方に対して次のアクセス許可が必要です。

  • Root\Microsoft\SqlServer\ComputerManagement10 WMI 名前空間への読み取りアクセス。 既定では、すべてのユーザーがアカウントの有効化権限による読み取りアクセスを持ちます。

    注意

    WMI のアクセス許可を確認する方法については、「 オフライン ログ ファイルの表示」トピックの「セキュリティ」セクションを参照してください。

  • エラー ログを格納したフォルダーへの読み取り権限。 既定では、エラー ログは次のパスにあります (Drive> は<SQL Serverインストールしたドライブを表し、<InstanceName> は SQL Server のインスタンスの名前です)。

    <Drive>:\Program Files\Microsoft SQL Server\MSSQL11。<InstanceName>\MSSQL\Log

ファイアウォール経由で接続している場合は、リモート ターゲット コンピューター上の WMI のファイアウォールで例外が設定されていることを確認します。 詳細については、「 Windows Vista を使用した WMI リモートへの接続」を参照してください。

関連項目