3.21. システムイベントの確認

Red Hat Virtualization Manager は、多くのシステムイベントを記録およびログします。これらのイベントログには、ユーザーインターフェイス、システムログファイルからアクセスでき、API を使用してアクセスすることもできます。ovirtsdk ライブラリーは、events コレクションを使用してイベントを公開します。

例3.19 システムイベントの確認

この例では、events コレクションが一覧表示されます。

list メソッドの query パラメーターは、使用可能なすべての結果ページが返されるようにするために使用されます。デフォルトでは、list メソッドは結果の最初のページのみを返します。そのレコードの長さは 100 です。

返されたリストでは、新しく発生した順にイベントが表示されるよう並べ替えられます。

V4

import ovirtsdk4 as sdk
import ovirtsdk4.types as types

connection = sdk.Connection(
    url='https://engine.example.com/ovirt-engine/api',
    username='admin@internal',
    password='password',
    ca_file='ca.pem',
)

# Find the service that manages the collection of events:
events_service = connection.system_service().events_service()

page_number = 1
events = events_service.list(search='page %s' % page_number)
while events:
    for event in events:
        print(
            "%s %s CODE %s - %s" % (
                event.time,
                event.severity,
                event.code,
                event.description,
            )
        )
    page_number = page_number + 1
    events = events_service.list(search='page %s' % page_number)

# Close the connection to the server:
connection.close()

これらの例は、次の形式でイベントを出力します。

YYYY-MM-DD_T_HH:MM:SS NORMAL CODE 30 - User admin@internal logged in.
YYYY-MM-DD_T_HH:MM:SS NORMAL CODE 153 - VM vm1 was started by admin@internal (Host: MyHost).
YYYY-MM-DD_T_HH:MM:SS NORMAL CODE 30 - User admin@internal logged in.