システム メッセージ ロギングの設定

この章では、Cisco NX-OS デバイス上でシステム メッセージ ロギングを設定する方法について説明します。

この章の内容は、次のとおりです。

システム メッセージ ロギングについて

システム メッセージ ロギングを使用して宛先を制御し、システム プロセスが生成するメッセージの重大度をフィルタリングできます。端末セッション、ログ ファイル、およびリモート システム上の Syslog サーバへのロギングを設定できます。

システム メッセージ ロギングは RFC 3164 に準拠しています。システム メッセージのフォーマットおよびデバイスが生成するメッセージの詳細については、『Cisco NX-OS System Messages Reference』を参照してください。

デフォルトでは、デバイスはターミナル セッションにメッセージを出力し、ログ ファイルにシステム メッセージをログします。

次の表に、システム メッセージで使用されている重大度を示します。重大度を設定する場合、システムはそのレベル以下のメッセージを出力します。

表 1  システム メッセージの重大度

レベル

説明

0:緊急

システムが使用不可

1:アラート

即時処理が必要

2:クリティカル

クリティカル状態

3:エラー

エラー状態

4:警告

警告状態

5:通知

正常だが注意を要する状態

6:情報

単なる情報メッセージ

7:デバッグ

デバッグ実行時にのみ表示

デバイスは重大度 0、1、または 2 のメッセージのうち、最新の 100 メッセージを NVRAM ログに記録します。NVRAM へのロギングは設定できません。

メッセージを生成したファシリティと重大度に基づいて記録するシステム メッセージを設定できます。

Syslog サーバ

syslog サーバは、syslog プロトコルに基づいてシステム メッセージを記録するリモート システム上で動作します。IPv4 または IPv6 の Syslog サーバを最大 8 つ設定できます。

ファブリック内のすべてのスイッチで syslog サーバの同じ設定をサポートするために、Cisco Fabric Services(CFS)を使用して syslog サーバ設定を配布できます。


(注)  


最初のデバイス初期化時に、メッセージが syslog サーバに送信されるのは、ネットワークの初期化後です。


システム メッセージ ロギングのライセンス要件

製品

ライセンス要件

Cisco NX-OS

システム メッセージ ロギングにライセンスは不要です。ライセンス パッケージに含まれていない機能は nx-os イメージにバンドルされており、無料で提供されます。NX-OS ライセンス方式の詳細については、『Cisco NX-OS Licensing Guide』を参照してください。

システム メッセージ ロギングの注意事項および制約事項

システム メッセージ ロギングには次の設定上の注意事項と制約事項があります。

  • システム メッセージは、デフォルトでコンソールおよびログ ファイルに記録されます。

  • syslog サーバが到達可能になる前に出力されたシステム メッセージ(スーパーバイザのアクティブまたはオンライン メッセージなど)は、syslog サーバに送信できません。

システム メッセージ ロギングのデフォルト設定

次の表に、システム メッセージ ロギング パラメータのデフォルト設定を示します。

表 2  デフォルトのシステム メッセージ ロギング パラメータ

パラメータ(Parameters)

デフォルト

コンソール ロギング

重大度 2 でイネーブル

モニタ ロギング

重大度 5 でイネーブル

ログ ファイル ロギング

重大度 5 のメッセージ ロギングがイネーブル

モジュール ロギング

重大度 5 でイネーブル

ファシリティ ロギング

イネーブル

タイムスタンプ単位

Seconds

Syslog サーバ ロギング

ディセーブル

Syslog サーバ設定の配布

ディセーブル

システム メッセージ ロギングの設定


(注)  


この機能の Cisco NX-OS コマンドは、Cisco IOS のコマンドとは異なる場合があるので注意してください。

ターミナル セッションへのシステム メッセージ ロギングの設定

重大度に基づいて、コンソール、Telnet、および SSH セッションにメッセージを記録するようにデバイスを設定できます。

デフォルトでは、ターミナル セッションでロギングはイネーブルです。


(注)  


コンソールのボー レートが 9600 ボー(デフォルト)の場合、現在の Critical(デフォルト)ロギング レベルが維持されます。コンソール ロギング レベルを変更しようとすると、必ずエラー メッセージが生成されます。ロギング レベルを上げる(Critical よりも上に)には、コンソールのボー レートを 38400 ボーに変更する必要があります。
手順の概要

    1.    terminal monitor

    2.    configure terminal

    3.    [no] logging console [severity-level]

    4.    (任意) show logging console

    5.    [no] logging monitor [severity-level]

    6.    (任意) show logging monitor

    7.    [no] logging message interface type ethernet description

    8.    (任意) copy running-config startup-config


手順の詳細
     コマンドまたはアクション目的
    ステップ 1terminal monitor


    例:
    switch# terminal monitor
     

    デバイスがコンソールにメッセージを記録できるようにします。

     
    ステップ 2configure terminal


    例:
    switch# configure terminal
    switch(config)#
     

    グローバル コンフィギュレーション モードを開始します。

     
    ステップ 3[no] logging console [severity-level]


    例:
    switch(config)# logging console 3
     

    指定された重大度とそれより上位の重大度のメッセージをコンソール セッションに記録するように、デバイスを設定します。小さい値は、より高い重大度を示します。重大度は 0 ~ 7 の範囲です。

    • 0:緊急

    • 1:アラート

    • 2:クリティカル

    • 3:エラー

    • 4:警告

    • 5:通知

    • 6:情報

    • 7:デバッグ

    重大度が指定されていない場合、デフォルトの 2 が使用されます。no オプションは、メッセージをコンソールにログするデバイスの機能をディセーブルにします。

     
    ステップ 4show logging console


    例:
    switch(config)# show logging console
     
    (任意)

    コンソール ロギング設定を表示します。

     
    ステップ 5[no] logging monitor [severity-level]


    例:
    switch(config)# logging monitor 3
     

    デバイスが指定された重大度とそれより上位の重大度のメッセージをモニタに記録できるようにします。小さい値は、より高い重大度を示します。重大度は 0 ~ 7 の範囲です。

    • 0:緊急

    • 1:アラート

    • 2:クリティカル

    • 3:エラー

    • 4:警告

    • 5:通知

    • 6:情報

    • 7:デバッグ

    設定は Telnet および SSH セッションに適用されます。

    重大度が指定されていない場合、デフォルトの 2 が使用されます。no オプションは、メッセージを Telnet および SSH セッションにログするデバイスの機能をディセーブルにします。

     
    ステップ 6show logging monitor


    例:
    switch(config)# show logging monitor
     
    (任意)

    モニタ ロギング設定を表示します。

     
    ステップ 7[no] logging message interface type ethernet description


    例:
    switch(config)# logging message interface type ethernet description
     

    システム メッセージ ログ内で、物理的なイーサネット インターフェイスおよびサブインターフェイスに対して説明を追加できるようにします。この説明は、インターフェイスで設定された説明と同じものです。

    no オプションは、物理イーサネット インターフェイスのシステム メッセージ ログ内のインターフェイス説明の印刷をディセーブルにします。

     
    ステップ 8copy running-config startup-config


    例:
    switch(config)# copy running-config startup-config
     
    (任意)

    実行コンフィギュレーションを、スタートアップ コンフィギュレーションにコピーします。

     

    Syslog メッセージの Origin ID の設定

    リモートの syslog サーバに送信される syslog メッセージに、ホスト名、IP アドレス、またはテキスト文字列を付けるように Cisco NX-OS を設定できます。

    手順の概要

      1.    configure terminal

      2.    logging origin-id {hostname | ipip-address | stringtext-string}

      3.    (任意) show logging origin-id

      4.    (任意) copy running-config startup-config


    手順の詳細
       コマンドまたはアクション目的
      ステップ 1configure terminal


      例:
      switch# configure terminal
      switch(config)#
       

      グローバル コンフィギュレーション モードを開始します。

       
      ステップ 2logging origin-id {hostname | ipip-address | stringtext-string}


      例:
      switch(config)# logging origin-id string n9k-switch-abc
       

      リモートの syslog サーバに送信される syslog メッセージに追加する、ホスト名、IP アドレス、またはテキスト文字列を指定します。

       
      ステップ 3show logging origin-id


      例:
      switch(config)# show logging origin-id
      Logging origin_id : enabled (string: n9k-switch-abc)
       
      (任意)

      リモートの syslog サーバに送信される syslog メッセージに追加するよう設定された、ホスト名、IP アドレス、またはテキスト文字列が表示されます。

       
      ステップ 4copy running-config startup-config


      例:
      switch(config)# copy running-config startup-config
      
       
      (任意)

      実行コンフィギュレーションを、スタートアップ コンフィギュレーションにコピーします。

       

      ファイルへのシステム メッセージの記録

      システム メッセージをファイルに記録するようにデバイスを設定できます。デフォルトでは、システム メッセージはファイル log:messages に記録されます。

      手順の概要

        1.    configure terminal

        2.    [no] logging logfilelogfile-name severity-level [sizebytes]

        3.    logging event {link-status | trunk-status} {enable | default}

        4.    (任意) show logging info

        5.    (任意) copy running-config startup-config


      手順の詳細
         コマンドまたはアクション目的
        ステップ 1configure terminal


        例:
        switch# configure terminal
        switch(config)#
        
         

        グローバル コンフィギュレーション モードを開始します。

         
        ステップ 2[no] logging logfilelogfile-name severity-level [sizebytes]


        例:
        switch(config)# logging logfile my_log 6
        
         

        システム メッセージを保存するのに使用するログ ファイルの名前と、記録する最小重大度を設定します。小さい値は、より高い重大度を示します。重大度は 0 ~ 7 の範囲です。

        • 0:緊急

        • 1:アラート

        • 2:クリティカル

        • 3:エラー

        • 4:警告

        • 5:通知

        • 6:情報

        • 7:デバッグ

        任意で最大ファイル サイズを指定できます。

        デフォルトの重大度は 5 です。ファイル サイズは 10485760 です。ファイル サイズは 4096 ~ 4194304 バイトです。

         
        ステップ 3logging event {link-status | trunk-status} {enable | default}


        例:
        switch# logging event link-status default
        switch(config)#
        
         

        インターフェイス イベントをロギングします。

        • link-status:すべての UP/DOWN メッセージおよび CHANGE メッセージをログに記録します。

        • trunk-status:すべての TRUNK ステータス メッセージをログに記録します。

        • enable:ポート レベルのコンフィギュレーションを上書きしてロギングをイネーブルにするよう、指定します。

        • default:ロギングが明示的に設定されてないインターフェイスで、デフォルトのロギング設定を使用するよう、指定します。

         
        ステップ 4show logging info


        例:
        switch(config)# show logging info
        
         
        (任意)

        ロギング設定を表示します。

         
        ステップ 5copy running-config startup-config


        例:
        switch(config)# copy running-config startup-config
        
         
        (任意)

        実行コンフィギュレーションを、スタートアップ コンフィギュレーションにコピーします。

         

        モジュールおよびファシリティ メッセージのロギングの設定

        モジュールおよびファシリティに基づいて記録するメッセージの重大度およびタイムスタンプの単位を設定できます。

        手順の概要

          1.    configure terminal

          2.    [no] logging module [severity-level]

          3.    (任意) show logging module

          4.    [no] logging levelfacility severity-level

          5.    (任意) show logging level [facility]

          6.    (任意) [no] logging levelethpm

          7.    [no] logging timestamp {microseconds | milliseconds | seconds}

          8.    (任意) show logging timestamp

          9.    (任意) copy running-config startup-config


        手順の詳細
           コマンドまたはアクション目的
          ステップ 1configure terminal


          例:
          switch# configure terminal
          switch(config)#
          
           

          グローバル コンフィギュレーション モードを開始します。

           
          ステップ 2[no] logging module [severity-level]


          例:
          switch(config)# logging module 3
           

          指定された重大度またはそれ以上の重大度であるモジュール ログ メッセージをイネーブルにします。重大度は 0 ~ 7 の範囲です。

          • 0:緊急

          • 1:アラート

          • 2:クリティカル

          • 3:エラー

          • 4:警告

          • 5:通知

          • 6:情報

          • 7:デバッグ

          重大度が指定されていない場合、デフォルトの 5 が使用されます。no オプションを使用すると、モジュール ログ メッセージがディセーブルになります。

           
          ステップ 3show logging module


          例:
          switch(config)# show logging module
           
          (任意)

          モジュール ロギング設定を表示します。

           
          ステップ 4[no] logging levelfacility severity-level


          例:
          switch(config)# logging level aaa 2
           

          指定された重大度またはそれ以上の重大度である指定のファシリティからのロギング メッセージをイネーブルにします。重大度は 0 ~ 7 の範囲です。

          • 0:緊急

          • 1:アラート

          • 2:クリティカル

          • 3:エラー

          • 4:警告

          • 5:通知

          • 6:情報

          • 7:デバッグ

          同じ重大度をすべてのファシリティに適用するには、all ファシリティを使用します。デフォルト値については、show logging level コマンドを参照してください。

          no オプションを使用すると、指定されたファシリティのロギング重大度がデフォルトのレベルにリセットされます。ファシリティおよび重大度を指定しなかった場合、すべてのファシリティがそれぞれのデフォルト重大度にリセットされます。

           
          ステップ 5show logging level [facility]


          例:
          switch(config)# show logging level aaa
          
           
          (任意)

          ファシリティごとに、ロギング レベル設定およびシステムのデフォルト レベルを表示します。ファシリティを指定しなかった場合は、すべてのファシリティのレベルが表示されます。

           
          ステップ 6[no] logging levelethpm


          例:
          switch(config)# logging level ethpm ?
          <0-7>      0-emerg;1-alert;2-crit;3-err;4-warn;5-notif;6-inform;7-debug
            link-down  Configure logging level for link down syslog messages
            link-up    Configure logging level for link up syslog messages
          
          switch(config)#logging level ethpm link-down ?
          error  ERRORS
            notif  NOTICE
          (config)# logging level ethpm link-down error ?
            
          <CR>
          (config)# logging level ethpm link-down notif ?
          <CR>
          switch(config)#logging level ethpm link-up ?
          error  ERRORS
            notif  NOTICE
          (config)# logging level ethpm link-up error ?
            
          <CR>
          (config)# logging level ethpm link-up notif ?
          <CR>
           
          (任意)

          イーサネット ポート マネージャの link-up/link-down syslog メッセージのロギングをレベル 3 で有効にします。

          no 形式を使用すると、イーサネット ポート マネージャの syslog メッセージにデフォルトのロギング レベルが使用されます。

           
          ステップ 7[no] logging timestamp {microseconds | milliseconds | seconds}


          例:
          switch(config)# logging timestamp milliseconds
          
           

          ロギング タイムスタンプ単位を設定します。デフォルトでは、単位は秒です。

          (注)      このコマンドは、スイッチ内で保持されているログに適用されます。また、外部のロギング サーバには適用されません。
           
          ステップ 8show logging timestamp


          例:
          switch(config)# show logging timestamp
          
           
          (任意)

          設定されたロギング タイムスタンプ単位を表示します。

           
          ステップ 9copy running-config startup-config


          例:
          switch(config)# copy running-config startup-config
          
           
          (任意)

          実行コンフィギュレーションを、スタートアップ コンフィギュレーションにコピーします。

           

          syslog サーバの設定

          システム メッセージを記録する、リモート システムを参照する syslog サーバを最大で 8 台設定できます。


          (注)  


          シスコは、管理仮想ルーティングおよび転送(VRF)インスタンスを使用するサーバとして、syslog サーバを設定することを推奨します。VRF の詳細情報については、『Cisco Nexus 9000 Series NX-OS Unicast Routing Configuration Guide』を参照してください。
          手順の概要

            1.    configure terminal

            2.    [no] logging serverhost [severity-level [use-vrfvrf-name]]

            3.    logging source-interface loopbackvirtual-interface

            4.    (任意) show logging server

            5.    (任意) copy running-config startup-config


          手順の詳細
             コマンドまたはアクション目的
            ステップ 1configure terminal


            例:
            switch# configure terminal
            switch(config)#
             

            グローバル コンフィギュレーション モードを開始します。

             
            ステップ 2[no] logging serverhost [severity-level [use-vrfvrf-name]]


            例:
            switch(config)# logging server 192.0.2.253


            例:
            switch(config)# logging server 2001::)db*::3 5 use-vrf red
             

            指定されたホスト名、あるいは IPv4 または IPv6 アドレスで Syslog サーバを設定します。use-vrf キーワードを使用すると、メッセージ ロギングを特定の VRF に限定できます。重大度は 0 ~ 7 の範囲です。

            • 0:緊急

            • 1:アラート

            • 2:クリティカル

            • 3:エラー

            • 4:警告

            • 5:通知

            • 6:情報

            • 7:デバッグ

            デフォルトの発信ファシリティは local7 です。

            no オプションは、指定したホストのロギング サーバを削除します。

            最初の例では、ファシリティ local 7 のすべてのメッセージを転送します。2 番目の例では、VRF red で重大度が 5 以下のメッセージを転送します。

             
            ステップ 3logging source-interface loopbackvirtual-interface


            例:
            switch(config)# logging source-interface loopback 5
             

            リモート Syslog サーバの送信元インターフェイスをイネーブルにします。virtual-interface 引数の範囲は 0 ~ 1023 です。

             
            ステップ 4show logging server


            例:
            switch(config)# show logging server
             
            (任意)

            Syslog サーバ設定を表示します。

             
            ステップ 5copy running-config startup-config


            例:
            switch(config)# copy running-config startup-config
            
             
            (任意)

            実行コンフィギュレーションを、スタートアップ コンフィギュレーションにコピーします。

             

            UNIX または Linux システムでの Syslog サーバの設定

            /etc/syslog.conf ファイルに次の行を追加して、UNIX または Linux システム上に Syslog サーバを設定できます。

            facility.level <five tab characters> action
            
            

            次の表に、設定可能な syslog フィールドを示します。

            表 3 syslog.conf の Syslog フィールド
            フィールド 説明

            ファシリティ

            メッセージの作成者。auth、authpriv、cron、daemon、kern、lpr、mail、mark、news、syslog、user、local0 ~ local7 です。アスタリスク(*)を使用するとすべてを指定します。これらのファシリティ指定により、発信元に基づいてメッセージの宛先を制御できます。

            (注)     

            ローカル ファシリティを使用する前に設定をチェックします。

            レベル

            メッセージを記録する最小重大度。debug、info、notice、warning、err、crit、alert、emerg です。アスタリスク(*)を使用するとすべてを指定します。none を使用するとファシリティをディセーブルにできます。

            Action

            メッセージの宛先。ファイル名、前に @ 記号を加えたホスト名、ユーザをカンマで区切ったリスト、またはすべてのログイン ユーザを表すアスタリスク(*)を使用できます。

            手順の概要

              1.    /etc/syslog.conf ファイルに次の行を追加して、ファイル /var/log/myfile.log に local7 ファシリティのデバッグ メッセージを記録します。

              2.    シェル プロンプトで次のコマンドを入力して、ログ ファイルを作成します。

              3.    次のコマンドを入力して、システム メッセージ ロギング デーモンが myfile.log をチェックして、新しい変更を取得するようにします。


            手順の詳細
              ステップ 1   /etc/syslog.conf ファイルに次の行を追加して、ファイル /var/log/myfile.log に local7 ファシリティのデバッグ メッセージを記録します。

              例:
              debug.local7 var/log/myfile.log
              
              
              ステップ 2   シェル プロンプトで次のコマンドを入力して、ログ ファイルを作成します。

              例:
              $ touch /var/log/myfile.log
              $ chmod 666 /var/log/myfile.log
              
              
              ステップ 3   次のコマンドを入力して、システム メッセージ ロギング デーモンが myfile.log をチェックして、新しい変更を取得するようにします。

              例:
              $ kill -HUP ~cat /etc/syslog.pid~
              
              

              ログ ファイルの表示およびクリア

              ログ ファイルおよび NVRAM のメッセージを表示したり消去したりできます。

              手順の概要

                1.    show logging lastnumber-lines

                2.    show logging logfile [start-timeyyyymmm dd hh:mm:ss] [end-timeyyyy mmm dd hh:mm:ss]

                3.    show logging nvram [lastnumber-lines]

                4.    clear logging logfile

                5.    clear logging nvram


              手順の詳細
                 コマンドまたはアクション目的
                ステップ 1show logging lastnumber-lines


                例:
                switch# show logging last 40
                 

                ロギング ファイルの最終行番号を表示します。最終行番号には 1 ~ 9999 を指定できます。

                 
                ステップ 2show logging logfile [start-timeyyyymmm dd hh:mm:ss] [end-timeyyyy mmm dd hh:mm:ss]


                例:
                switch# show logging logfile start-time 2013 oct 1 15:10:0
                 

                入力されたスパン内にタイムスタンプがあるログ ファイルのメッセージを表示します。終了時間を入力しないと、現在の時間が使用されます。月の時間フィールドには 3 文字を、年と日の時間フィールドには数値を入力します。

                 
                ステップ 3show logging nvram [lastnumber-lines]


                例:
                switch# show logging nvram last 10
                 

                NVRAM のメッセージを表示します。表示される行数を制限するには、表示する最終行番号を入力できます。最終行番号には 1 ~ 100 を指定できます。

                 
                ステップ 4clear logging logfile


                例:
                switch# clear logging logfile
                 

                ログ ファイルの内容をクリアします。

                 
                ステップ 5clear logging nvram


                例:
                switch# clear logging nvram
                 

                NVRAM の記録されたメッセージをクリアします。

                 

                システム メッセージ ロギングの設定確認

                システム メッセージ ロギングの設定情報を表示するには、次の作業のいずれかを行います。

                コマンド

                目的

                show logging console

                コンソール ロギング設定を表示します。

                show logging info

                ロギング設定を表示します。

                show logging lastnumber-lines

                ログ ファイルの末尾から指定行数を表示します。

                show logging level [facility]

                ファシリティ ロギング重大度設定を表示します。

                show logging logfile [start-timeyyyymmmddhh:mm:ss] [end-timeyyyymmmddhh:mm:ss]

                ログ ファイルのメッセージを表示します。

                show logging module

                モジュール ロギング設定を表示します。

                show logging monitor

                モニタ ロギング設定を表示します。

                show logging nvram [lastnumber-lines]

                NVRAM ログのメッセージを表示します。

                show logging origin-id

                リモートの syslog サーバに送信される syslog メッセージに追加するよう設定された、ホスト名、IP アドレス、またはテキスト文字列が表示されます。

                show logging server

                Syslog サーバ設定を表示します。

                show logging timestamp

                ロギング タイムスタンプ単位設定を表示します。

                システム メッセージ ロギングのコンフィギュレーション例

                システム メッセージ ロギングのコンフィギュレーション例を示します。

                configure terminal
                 logging console 3
                 logging monitor 3
                 logging logfile my_log 6
                 logging module 3
                 logging level aaa 2
                 logging timestamp milliseconds
                 logging server 172.28.254.253
                 logging server 172.28.254.254 5 facility local3
                 copy running-config startup-config

                その他の参考資料

                関連資料

                関連項目 マニュアル タイトル
                システム メッセージ 『Cisco NX-OS System Messages Reference』