web-dev-qa-db-ja.com

レプリカセット付きのmongodb.logから「killcursors:found 0 of 1」とは何ですか?

これはmloginfo log --distinctの出力です。 killcursorsは正確には何を意味し、DBAアクションは何ですか? 3ノードのレプリカセットで最新のmongodを使用します。

検索エンジンを使用して、mongodb-userメーリングリストでしか見つかりませんでした

Killcursorsは、サーバー上のカーソル参照を削除するデータベースコマンドです。それは正常で無害です。セーフモードで挿入した場合にのみ例外が発生します。

もっと情報が欲しい。

    source: mongodb.log
       Host: example
      start: 2016 Jul 15 07:35:28.419
        end: 2016 Aug 19 08:00:15.874
date format: iso8601-local
     length: 244025
     binary: mongod
    version: 3.2.8
    storage: wiredTiger

DISTINCT

   64062    connection accepted from ... # ... ( ... now open)
   63984    end connection ... ( ... now open)
       4    killcursors: found ... of
       3    assertion ... ns: ... query:
       1    git version:
       1    waiting for connections on port

ログ

2016-08-05T15:29:36.935+0200 I COMMAND  [conn39339] killcursors: found 0 of 1
2016-08-05T15:29:36.937+0200 I COMMAND  [conn39327] killcursors: found 0 of 1
2016-08-05T15:29:36.945+0200 I COMMAND  [conn39329] killcursors: found 0 of 1
2016-08-05T15:29:36.946+0200 I COMMAND  [conn39343] killcursors: found 0 of 1
1
Ivanov

2016-08-05T15:29:36.935 + 0200 I COMMAND [conn39339] killcursors:0の1が見つかりました

あなたが見つけた情報によると、これは通常の(そして良性の)メッセージです:管理アクションは必要ありません。このメッセージは、クライアント/ドライバーが killcursorsコマンド を発行したときにログに記録される場合があります(たとえば、操作がカーソルタイムアウトに達したとき、またはアクティブなカーソルが明示的に閉じられたとき)。通常、非アクティブなカーソルは、クライアントのkillcursorコマンドなしでmongodサーバーによって自動的にクリーンアップされます。

さらに調査したい場合は、アプリケーション開発者にタイムアウトを使用しているか、結果がなくなる前にアクティブカーソルを閉じているか、またはkillcursorsコマンドを明示的に呼び出しているかどうかを尋ねます。このメッセージの頻度が過去の発生から大幅に変更されている場合は、使用しているドライバーの特定のバージョンを確認することもできます。

ただし、(mloginfo出力によると)1か月以上のログアクティビティで4回しか発生しなかった場合、これらのメッセージは関係ありません。

2
Stennie