(57)【要約】【課題】通信装置内の日時計測部が現在日時とは異なる日時を計測している状況を考慮して、ログ情報をログ管理サーバに送信するための技術を提供する。【解決手段】通信装置は、日時を計測する日時計測部と通信装置の電源がオンされてからの経過期間を計測する期間計測部を備える。通信装置は、日時計測部によって計測される日時が現在日時に変更される前に、通信装置において第１のイベントが発生し、かつ、第１のイベントが所定のイベントである第１の場合に、第１のイベントのログを示す特定のログ情報をサーバに送信し、第１のイベントが所定のイベントとは異なる第２の場合に、日時計測部によって計測される日時が現在日時に変更された後の第１のタイミングで、第１のイベントが発生した日時を示す第１の日時情報を算出し、第１のイベントのログを示す第１のログ情報であって、算出済みの第１の日時情報を含む第１のログ情報をサーバに送信する。【選択図】図６
2020071671.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
日時を計測する日時計測部であって、現在日時を示す現在日時情報が取得される場合に、前記日時計測部によって計測される日時は、取得済みの前記現在日時情報によって示される前記現在日時に変更される、前記日時計測部と、
前記通信装置の電源がオンされてからの経過期間を計測する期間計測部と、
前記日時計測部によって計測される日時が前記現在日時に変更される前に、前記通信装置において第１のイベントが発生し、かつ、前記第１のイベントが所定のイベントである第１の場合に、前記所定のイベントである前記第１のイベントのログを示す特定のログ情報をサーバに送信する第１の送信部であって、前記第１のイベントが前記所定のイベントとは異なるイベントである第２の場合に、前記特定のログ情報は前記サーバに送信されない、前記第１の送信部と、
前記第２の場合に、前記第１のイベントが発生するタイミングで前記期間計測部によって計測された経過期間を示す第１の期間情報をメモリに記憶する第１の記憶制御部と、
前記第２の場合に、前記日時計測部によって計測される日時が前記現在日時に変更された後の第１のタイミングで、前記所定のイベントとは異なるイベントである前記第１のイベントが発生した日時を示す第１の日時情報を算出する第１の算出部であって、前記第１の日時情報は、前記メモリ内の前記第１の期間情報によって示される前記経過期間と、前記第１のタイミングで前記日時計測部によって計測された日時と、前記第１のタイミングで前記期間計測部によって計測された経過期間と、を利用して算出される、前記第１の算出部と、
前記第１の日時情報が算出される場合に、前記所定のイベントとは異なるイベントである前記第１のイベントのログを示す第１のログ情報であって、算出済みの前記第１の日時情報を含む前記第１のログ情報を前記サーバに送信する第２の送信部と、
を備える、通信装置。
【請求項２】
前記通信装置は、さらに、
前記第１の場合に、前記第１のイベントが発生するタイミングで前記期間計測部によって計測された経過期間を示す第２の期間情報を前記メモリに記憶する第２の記憶制御部と、
前記特定のログ情報が前記サーバに送信された後に、前記日時計測部によって計測される日時が前記現在日時に変更される場合に、前記日時計測部によって計測される日時が前記現在日時に変更された後の第２のタイミングで、前記所定のイベントである前記第１のイベントが発生した日時を示す第２の日時情報を算出する第２の算出部であって、前記第２の日時情報は、前記メモリ内の前記第２の期間情報によって示される前記経過期間と、前記第２のタイミングで前記日時計測部によって計測された日時と、前記第２のタイミングで前記期間計測部によって計測された経過期間と、を利用して算出される、前記第２の算出部と、
前記第２の日時情報が算出される場合に、前記所定のイベントである前記第１のイベントのログを示す第２のログ情報であって、算出済みの前記第２の日時情報を含む前記第２のログ情報を前記サーバに送信する第３の送信部と、
を備える、請求項１に記載の通信装置。
【請求項３】
前記特定のログ情報は、さらに、前記第１のイベントが発生するタイミングで前記期間計測部によって計測された前記経過期間を示す第３の期間情報を含み、
前記通信装置は、さらに、
前記特定のログ情報が前記サーバに送信された後に、前記日時計測部によって計測される日時が前記現在日時に変更される場合に、前記日時計測部によって計測される日時が前記現在日時に変更された後の第３のタイミングで、前記第１のイベントが発生した日時を示す日時情報を算出するための基準情報を外部装置に送信する第４の送信部であって、前記基準情報は、前記第３のタイミングで前記日時計測部によって計測された日時と、前記第３のタイミングで前記期間計測部によって計測された経過期間と、を含む、前記第４の送信部を備える、請求項１に記載の通信装置。
【請求項４】
前記特定のログ情報は、さらに、前記特定のログ情報を識別するログ識別情報を含み、
前記基準情報は、さらに、前記ログ識別情報を含む、請求項３に記載の通信装置。
【請求項５】
前記通信装置の電源がオンされる毎に、前記期間計測部によって計測される経過期間はゼロにリセットされ、
前記通信装置は、さらに、
前記通信装置の電源がオンされる毎に、前記期間計測部によって計測される経過期間を識別する期間識別情報をメモリに記憶する第３の記憶制御部を備え、
前記通信装置の電源がオンされることに起因して特定の期間識別情報が前記メモリに記憶されてから、前記通信装置の電源がオフされるまでの間に、前記第１のイベントが発生する場合に、前記ログ識別情報は、前記特定の期間識別情報を含む、請求項４に記載の通信装置。
【請求項６】
前記通信装置は、さらに、
前記期間識別情報が前記メモリに記憶されてから前記日時計測部によって計測される日時が前記現在日時に変更されるまでの間に前記通信装置においてイベントが発生しない場合に、前記メモリから前記期間識別情報を削除する削除部を備える、請求項５に記載の通信装置。
【請求項７】
前記第４の送信部は、前記基準情報を含む電子メールを前記外部装置に送信する、請求項３から６のいずれか一項に記載の通信装置。
【請求項８】
前記第１の送信部は、Ｓｙｓｌｏｇプロトコルに従って、前記特定のログ情報を前記サーバに送信し、
前記第２の送信部は、前記Ｓｙｓｌｏｇプロトコルに従って、前記第１のログ情報を前記サーバに送信し、
前記第４の送信部は、前記Ｓｙｓｌｏｇプロトコルに従って、前記基準情報を前記外部装置である前記サーバに送信する、請求項３から６のいずれか一項に記載の通信装置。
【請求項９】
前記第１のイベントは、前記通信装置のユーザを認証するための認証処理が実行されることを含み、
前記所定のイベントは、前記認証処理が失敗することを含み、
前記所定のイベントとは異なるイベントは、前記認証処理が成功することを含む、請求項１から８のいずれか一項に記載の通信装置。
【請求項１０】
前記所定のイベントは、前記通信装置のユーザを認証するための認証処理が実行されることを含み、
前記所定のイベントとは異なるイベントは、前記認証処理が実行されることを含まない、請求項１から８のいずれか一項に記載の通信装置。
【請求項１１】
前記特定のログ情報及び前記第１のログ情報は、Ｓｙｓｌｏｇプロトコルに従って、前記サーバに送信される、請求項１から１０のいずれか一項に記載の通信装置。
【請求項１２】
通信装置のためのコンピュータプログラムであって、
前記通信装置は、
日時を計測する日時計測部であって、現在日時を示す現在日時情報が取得される場合に、前記日時計測部によって計測される日時は、取得済みの前記現在日時情報によって示される前記現在日時に変更される、前記日時計測部と、
前記通信装置の電源がオンされてからの経過期間を計測する期間計測部と、を備え、
前記コンピュータプログラムは、前記通信装置のコンピュータを、以下の各部、即ち、
前記日時計測部によって計測される日時が前記現在日時に変更される前に、前記通信装置において第１のイベントが発生し、かつ、前記第１のイベントが所定のイベントである第１の場合に、前記所定のイベントである前記第１のイベントのログを示す特定のログ情報をサーバに送信する第１の送信部であって、前記第１のイベントが前記所定のイベントとは異なるイベントである第２の場合に、前記特定のログ情報は前記サーバに送信されない、前記第１の送信部と、
前記第２の場合に、前記第１のイベントが発生するタイミングで前記期間計測部によって計測された経過期間を示す第１の期間情報をメモリに記憶する第１の記憶制御部と、
前記第２の場合に、前記日時計測部によって計測される日時が前記現在日時に変更された後の第１のタイミングで、前記所定のイベントとは異なるイベントである前記第１のイベントが発生した日時を示す第１の日時情報を算出する第１の算出部であって、前記第１の日時情報は、前記メモリ内の前記第１の期間情報によって示される前記経過期間と、前記第１のタイミングで前記日時計測部によって計測された日時と、前記第１のタイミングで前記期間計測部によって計測された経過期間と、を利用して算出される、前記第１の算出部と、
前記第１の日時情報が算出される場合に、前記第１のイベントのログを示す第１のログ情報であって、算出済みの前記第１の日時情報を含む前記第１のログ情報を前記サーバに送信する第２の送信部と、
として機能させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書では、ログ情報をサーバに送信する通信装置に関する技術を開示する。
【背景技術】
【０００２】
特許文献１には、動作が発生した日時を示す日時情報を含む動作ログを記憶するＭＦＰが開示されている。ＭＦＰは、所定のタイミングにおいて、Ｓｙｓｌｏｇプロトコルに従って、記憶済みの動作ログを外部ホストに送信する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２８７１０８号公報
【特許文献２】特開２００６−１５５３６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
動作ログに含まれる日時情報は、通常、ＭＦＰ内の時計等によって計測される日時を示す。上記の技術では、ＭＦＰ内の時計が現在日時とは異なる日時を計測している状況が想定されていない。
【０００５】
本実施例では、通信装置が現在日時とは異なる日時を計測している状況を考慮して、ログ情報をサーバに送信するための技術を提供する。
【０００６】
本明細書で開示する通信装置は、日時を計測する日時計測部であって、現在日時を示す現在日時情報が取得される場合に、前記日時計測部によって計測される日時は、取得済みの前記現在日時情報によって示される前記現在日時に変更される、前記日時計測部と、前記通信装置の電源がオンされてからの経過期間を計測する期間計測部と、前記日時計測部によって計測される日時が前記現在日時に変更される前に、前記通信装置において第１のイベントが発生し、かつ、前記第１のイベントが所定のイベントである第１の場合に、前記所定のイベントのである前記第１のイベントのログを示す特定のログ情報をサーバに送信する第１の送信部であって、前記第１のイベントが前記所定のイベントとは異なるイベントである第２の場合に、前記特定のログ情報は前記サーバに送信されない、前記第１の送信部と、前記第２の場合に、前記第１のイベントが発生するタイミングで前記期間計測部によって計測された経過期間を示す第１の期間情報をメモリに記憶する第１の記憶制御部と、前記第２の場合に、前記日時計測部によって計測される日時が前記現在日時に変更された後の第１のタイミングで、前記所定のイベントとは異なるイベントである前記第１のイベントが発生した日時を示す第１の日時情報を算出する第１の算出部であって、前記第１の日時情報は、前記メモリ内の前記第１の期間情報によって示される前記経過期間と、前記第１のタイミングで前記日時計測部によって計測された日時と、前記第１のタイミングで前記期間計測部によって計測された経過期間と、を利用して算出される、前記第１の算出部と、前記第１の日時情報が算出される場合に、前記所定のイベントとは異なるイベントである前記第１のイベントのログを示す第１のログ情報であって、算出済みの前記第１の日時情報を含む前記第１のログ情報を前記サーバに送信する第２の送信部と、を備えてもよい。
【０００７】
通信装置は、日時計測部によって計測される日時が現在日時に変更される前に現在日時を知り得ないので、第１のイベントが発生した日時も知り得ない。上記の構成によれば、通信装置は、所定のイベントである第１のイベントが発生した日時を知り得ないにも関わらず、所定のイベントである第１のイベントのログを示す特定のログ情報をサーバに送信する。これにより、サーバは、第１のイベントが発生した日時を知ることはできなくても、第１のイベントが所定のイベントであることを知ることができる。また、通信装置は、第１のイベントが所定のイベントとは異なるイベントである場合に、日時計測部によって計測される日時が現在日時に変更された後に、第１のイベントが発生した日時を示す第１の日時情報を含む第１のログ情報をサーバに送信する。これにより、サーバは、第１のイベントが所定のイベントとは異なるイベントであることを知ることができるとともに、第１のイベントが発生した日時も知ることができる。即ち、通信装置は、第１のイベントが所定のイベントである場合には、第１のイベントが発生した日時を知り得ない状態で特定のログ情報をサーバに迅速に送信する一方で、第１のイベントが所定のイベントとは異なるイベントである場合には、第１のイベントが発生した日時を知った後に第１のログ情報をサーバに送信する。従って、通信装置が現在日時とは異なる日時を計測している状況を考慮して、ログ情報をログ管理サーバに送信することができる。
【０００８】
上記の通信装置を実現するためのコンピュータプログラム、及び、当該コンピュータプログラムを記憶するコンピュータ可読記録媒体も新規で有用である。また、上記の通信装置によって実行される方法も新規で有用である。
【図面の簡単な説明】
【０００９】
【図１】通信システムの構成を示す。
【図２】計測日時を変更する変更処理のシーケンス図を示す。
【図３】ログ情報記憶処理のフローチャートを示す。
【図４】ログ情報送信処理のフローチャートを示す。
【図５】第１実施例における全ログ送信処理のフローチャートを示す。
【図６】第１実施例における具体的なケースを示す。
【図７】図６のケースにおけるプリンタ及びログ管理サーバ内の情報を示す。
【図８】第２実施例における全ログ送信処理のフローチャートを示す。
【図９】第２実施例における具体的なケースＢ１を示す。
【図１０】図９のケースにおけるプリンタ及びログ管理サーバ内の情報を示す。
【図１１】第２実施例における具体的なケースＢ２を示す。
【発明を実施するための形態】
【００１０】
（通信システム２の構成；図１）
図１に示されるように、通信システム２は、プリンタ１０と、ログ管理サーバ１００と、タイムサーバ２００と、端末装置３００と、を備える。各装置１０、１００、２００、３００は、同じＬＡＮ（Local Area Networkの略）４に所属しており、ＬＡＮ４を介して相互に通信可能である。
【００１１】
（プリンタ１０の構成）
プリンタ１０は、印刷機能を実行可能な周辺装置（即ち端末装置３００等の周辺装置）である。プリンタ１０は、ネットワークインターフェース１６と、制御部２０と、を備える。ネットワークインターフェース１６は、有線通信を実行するためのＩ／Ｆであり、ＬＡＮ４に接続されている。変形例では、ネットワークＩ／Ｆ１６は、無線通信を実行するためのＩ／Ｆであってもよく、この場合、ＬＡＮ４は、いわゆる無線ＬＡＮである。なお、以下では、インターフェースのことを「Ｉ／Ｆ」と記載する。
【００１２】
制御部２０は、ＣＰＵ２２と、メモリ２４と、を備える。ＣＰＵ２２は、メモリ２４に記憶されているプログラム２６、３０に従って、様々な処理を実行する。メモリ２４は、揮発性メモリ、不揮発性メモリ等によって構成される。メモリ２４は、基本的な処理を実現するためのＯＳプログラム（Operating Systemの略）２６と、ログプログラム３０と、プリンタ１０の管理者のメールアドレスＭＡと、を記憶する。ＯＳプログラム２６は、プリンタ１０のベンダ以外の事業者によって提供されるプログラムである。ログプログラム３０は、プリンタ１０のベンダによって提供されるプログラムである。
【００１３】
ＯＳプログラム２６は、日時管理プログラム２６ａと期間管理プログラム２６ｂとを含む。日時管理プログラム２６ａは、日時を計測して、計測済みの日時を示す計測日時情報をログプログラム３０に供給する。また、日時管理プログラム２６ａは、例えばタイムサーバ２００から現在日時を取得する場合に、現在計測している日時（以下、「計測日時」と記載）を当該現在日時に変更する。計測日時が現在日時に変更される前には、日時管理プログラム２６ａは、現在日時とは異なる日時、即ち、正確でない日時を計測し得る。
【００１４】
期間管理プログラム２６ｂは、プリンタ１０の電源がオンされてからの経過期間を計測して、計測済みの経過期間を示す計測期間情報をログプログラム３０に供給する。また、期間管理プログラム２６ｂによって計測される経過期間は、プリンタ１０の電源がオンされる毎にゼロにリセットされる。
【００１５】
ログプログラム３０は、プリンタ１０において発生したイベントのログを示すログ情報を管理し、当該ログ情報をログ管理サーバ１００に送信するためのプログラムである。ログ情報はＳｙｓｌｏｇプロトコルに従った文字列に変換され、当該文字列に変換されたログ情報はログ管理サーバ１００に送信される。Ｓｙｓｌｏｇプロトコルは、システムのログを記憶するための汎用的な通信プロトコルである。
【００１６】
ログ情報は、プリンタ１０においてイベントが発生した日時を示す日時情報と、イベントの内容を示すイベント情報と、を含む。ここで、「イベントが発生する」とは、プリンタ１０によって予め決められている処理が実行されることを意味する。予め決められている処理は、例えば、ユーザ認証、印刷処理、ＦｉｒｍＵｐｄａｔｅ等を含む。ユーザ認証は、プリンタ１０のユーザを認証するための処理である。例えば、プリンタ１０は、プリンタ１０と通信可能な外部装置（例えば端末装置３００）からプリンタ１０の設定情報（例えばネットワーク設定）の変更要求を受信する場合に、変更要求に含まれる認証情報（例えばユーザ名とパスワード）を利用してユーザ認証を実行する。印刷処理は、外部装置から画像データを受信して、当該画像データによって表わされる画像の印刷を実行する処理である。ＦｉｒｍＵｐｄａｔｅは、プリンタ１０に記憶されているプログラム（例えばＯＳプログラム、即ちＦｉｒｍｗａｒｅ）をアップデートする処理である。
【００１７】
ログプログラム３０は、優先イベントリスト３２を含む。優先イベントリスト３２は、複数個のイベントの内容のうち、ログ管理サーバ１００に優先的に知らせるイベントの内容のリストである。優先的に知らせるイベントの内容は、例えば、ユーザ認証の失敗、異常なＦｉｒｍＵｐｄａｔｅの実行である。異常なＦｉｒｍＵｐｄａｔｅは、例えば、ＦｉｒｍＵｐｄａｔｅが実行され、かつ、正常なプログラムであることを示す所定の情報がログプログラム３０に書き込まれないことである。異常なＦｉｒｍＵｐｄａｔｅは管理者以外の第三者によって不正に実行され得る。また、上記したように、ユーザ認証は、プリンタ１０の設定情報を変更する際に実行される。このため、第三者の外部装置から変更要求が不正に受信される場合に、ユーザ認証が失敗し得る。このように、優先イベントリスト３２は、第三者によって不正に行われる行為に起因する可能性が高いイベントの内容を含む。別言すれば、優先イベントリスト３２は、第三者によって不正に行われる行為に起因する可能性が低いイベントの内容（例えばユーザ認証の成功、正常なＦｉｒｍＵｐｄａｔｅ、印刷処理の成功又は失敗）を含まない。
【００１８】
また、メモリ２４は、さらに、ログテーブル３６を記憶する。ログテーブル３６は、ログ管理サーバ１００に送信されるログ情報を記憶するためのテーブルである。ログテーブル３６は、ログ情報を識別する番号を示すログ番号（例えば「log01」）と、ログ情報と、を対応付けて記憶する。ログ情報は、イベントが発生した日時を示す日時情報（例えば「Sep-13 10:00」）と、当該イベントの内容を示すイベント情報（例えば「authentication, IP address = 10.0.0.99, result = fail」）と、を含む。
【００１９】
（ログ管理サーバ１００の構成）
ログ管理サーバ１００は、プリンタ１０から受信されるログ情報を管理するサーバである。ログ管理サーバ１００は、プリンタ１０の管理者によってＬＡＮ４に接続される。変形例では、ログ管理サーバ１００は、インターネットに設置されてもよい。
【００２０】
（タイムサーバ２００の構成）
タイムサーバ２００は、現在日時を示す現在日時情報をプリンタ１０に供給するサーバである。タイムサーバ２００は、プリンタ１０の管理者によってＬＡＮ４に接続される。タイムサーバ２００は、例えば、ＮＴＰ（Network Time Protocolの略）サーバである。変形例では、タイムサーバ２００は、インターネットに設置されてもよい。
【００２１】
（端末装置３００の構成）
端末装置３００は、デスクトップＰＣ（Personal Computerの略）、ノートＰＣ、タブレットＰＣ、携帯端末等の装置である。端末装置３００は、Ｓｙｓｌｏｇプロトコルに従った文字列を解析するためのＳＩＥＭ（Security Information and Event Managementの略）ツール３３０を記憶する。端末装置３００は、ログ管理サーバ１００からログ情報を受信し、ＳＩＥＭツール３３０に従って受信済みのログ情報を解析する。これにより、端末装置３００は、プリンタ１０においてイベントが発生した日時と、当該イベントの内容と、を取得することができ、それらの情報を表示することができる。
【００２２】
（変更処理；図２）
図２を参照して、計測日時を現在日時に変更するための処理について説明する。なお、以下では、理解の容易さの観点から、プリンタ１０のＣＰＵ２２が日時管理プログラム２６ａに従って実行する処理を、ＣＰＵ２２を主体として説明せず、日時管理プログラム２６ａを主体として説明する。また、同様に、ＣＰＵ２２がログプログラム３０に従って実行する処理を、ＣＰＵ２２を主体として説明せず、ログプログラム３０を主体として説明する。
【００２３】
日時管理プログラム２６ａは、プリンタ１０の電源がオンされたことをトリガとして、Ｔ１４において、ネットワークＩ／Ｆ１６を介して、現在日時情報を要求するための現在日時要求をタイムサーバ２００に送信する。
【００２４】
ケースＡ１では、日時管理プログラム２６ａは、Ｔ１６において、タイムサーバ２００から現在日時要求の応答として現在日時情報を受信する。
【００２５】
Ｔ１８では、日時管理プログラム２６ａは、計測日時を受信済みの現在日時情報によって示される現在日時に変更する。
【００２６】
本ケースＡ１では、Ｔ１８の処理の後に、ログプログラム３０は、Ｔ２０において、計測日時を示す計測日時情報を要求するための計測日時要求を日時管理プログラム２６ａに供給する。
【００２７】
日時管理プログラム２６ａは、Ｔ２０において、ログプログラム３０から計測日時要求を取得すると、Ｔ２２において、計測日時情報をログプログラム３０に供給する。これにより、ログプログラム３０は、計測日時（即ち現在日時）を知ることができる。
【００２８】
また、ケースＡ２では、タイムサーバ２００がＬＡＮ４から切断されている等のなんらかの不具合が発生している。このため、日時管理プログラム２６ａは、プリンタ１０の電源がオンされたことをトリガとして現在日時要求をタイムサーバ２００に送信しても、タイムサーバ２００から現在日時情報を受信しない。この結果、計測日時が現在日時に変更されない。
【００２９】
本ケースＡ２では、日時管理プログラム２６ａは、Ｔ３０において、ログプログラム３０から計測日時要求を取得する。しかしながら、計測日時が現在日時に変更されていないので、Ｔ３２において、日時管理プログラム２６ａは、計測日時が現在日時に変更されていないことを通知するための未変更通知をログプログラム３０に供給する。従って、ログプログラム３０は、計測日時を知ることができない。
【００３０】
また、日時管理プログラム２６ａは、計測日時が現在日時に変更されるまで、第１の周期（例えば１分周期）で現在日時要求をタイムサーバ２００に供給することを繰り返す。そして、日時管理プログラム２６ａは、計測日時が現在日時に変更されると、現在日時要求の送信を停止する。
【００３１】
（ログ情報記憶処理；図３）
図３を参照して、プリンタ１０のＣＰＵ２２がログプログラム３０に従って実行するログ情報記憶処理について説明する。以下では、理解の容易さの観点から、ログ情報記憶処理を、ＣＰＵ２２を主体として説明せず、ログプログラム３０を主体として説明する。後述するログ情報送信処理（図４）及び全ログ送信処理（図５）も同様である。図３の処理は、プリンタ１０の電源が投入されることをトリガとして開始される。
【００３２】
Ｓ１０では、ログプログラム３０は、プリンタ１０においてイベントが発生することを監視する。ログプログラム３０は、イベントが発生すると（Ｓ１０でＹＥＳ）、Ｓ１２に進む。以下では、当該イベントのことを「対象イベント」と記載する。
【００３３】
Ｓ１２では、ログプログラム３０は、計測日時要求を日時管理プログラム２６ａに供給する（図２のＴ２０、Ｔ３０参照）。
【００３４】
Ｓ１４では、ログプログラム３０は、日時管理プログラム２６ａから計測日時要求の応答として計測日時情報が取得されたのか否かを判断する。ログプログラム３０は、日時管理プログラム２６ａから計測日時情報が取得されたと判断する場合（Ｓ１４でＹＥＳ）に、Ｓ１６に進む。
【００３５】
Ｓ１６では、ログプログラム３０は、対象イベントのログを示すログ情報をログテーブル３６に記憶する。具体的には、ログプログラム３０は、取得済みの計測日時情報である日時情報（例えば文字列「Sep-13 10:01」）と、対象イベントの内容を示すイベント情報（例えば文字列「authentication, result = fail」）と、を含むログ情報をログテーブル３６に記憶する。Ｓ１６が終了すると、Ｓ１０に戻る。
【００３６】
また、ログプログラム３０は、日時管理プログラム２６ａから未変更通知（図２のＴ３参照）が取得されたと判断する場合（Ｓ１４でＮＯ）に、Ｓ１８に進む。
【００３７】
Ｓ１８では、ログプログラム３０は、計測期間要求を期間管理プログラム２６ｂに供給して、期間管理プログラム２６ｂから計測期間情報を取得する。これにより、ログプログラム３０は、対象イベントが発生するタイミングで期間管理プログラム２６ｂによって計測された経過期間を示す計測期間情報を取得することができる。
【００３８】
Ｓ２０では、ログプログラム３０は、日時情報を含まないと共にイベント情報を含むログ情報をログテーブル３６に記憶する。ここで、当該イベント情報は、さらに、取得済みの計測期間情報（例えば文字列「boot = 00:01:00」）を含む。Ｓ２０が終了すると、Ｓ１０に戻る。
【００３９】
（ログ情報送信処理；図４）
図４を参照して、プリンタ１０のＣＰＵ２２がログプログラム３０に従って実行するログ情報送信処理について説明する。図４の処理は、プリンタ１０の電源がオンされている間に第２の周期（例えば５分周期）で実行される。
【００４０】
Ｓ４８、Ｓ５０は、それぞれ、図３のＳ１２、１４と同様である。ログプログラム３０は、日時管理プログラム２６ａから計測日時情報が取得されたと判断する場合（Ｓ５０でＹＥＳ）に、Ｓ１００において、後述する全ログ送信処理（図５参照）を実行する。Ｓ１００が終了すると、図４の処理が終了する。
【００４１】
また、ログプログラム３０は、日時管理プログラム２６ａから未変更通知が取得されたと判断する場合（Ｓ５０でＮＯ）に、Ｓ６０において、ログテーブル３６に記憶されている全てのログ情報の中から１個のログ情報を選択する。
【００４２】
Ｓ６２では、ログプログラム３０は、選択済みのログ情報に含まれるイベント情報によって示されるイベントの内容が優先イベントリスト３２に含まれるのか否かを判断する。ログプログラム３０は、イベントの内容が優先イベントリスト３２に含まれると判断する場合（Ｓ６２でＹＥＳ）にＳ６４に進み、イベントの内容が優先イベントリスト３２に含まれないと判断する場合（Ｓ６２でＮＯ）に、Ｓ６４をスキップしてＳ６６に進む。
【００４３】
Ｓ６４では、ログプログラム３０は、選択済みのログ情報を優先ログ情報として決定する。優先ログ情報は、日時管理プログラム２６ａから現在日時情報を取得できない状況でもログ管理サーバ１００に優先的に送信されるログ情報である。Ｓ６４が終了するとＳ６６に進む。
【００４４】
Ｓ６６では、ログプログラム３０は、ログテーブル３６の中に未選択のログ情報が存在するのか否かを判断する。ＣＰＵ２２は、ログテーブル３６の中に未選択のログ情報が存在すると判断する場合（Ｓ６６でＹＥＳ）に、Ｓ６０に戻り、ログテーブル３６の中から１個のログ情報を新たに選択する。一方、ＣＰＵ２２は、ログテーブル３６の中に未選択のログ情報が存在しないと判断する場合（Ｓ６６でＮＯ）に、Ｓ７０に進む。
【００４５】
Ｓ７０では、ログプログラム３０は、１個以上のログ情報が優先ログ情報として決定される場合（Ｓ６４）に、優先ログ情報として決定された１個以上のログ情報のそれぞれをＳｙｓｌｏｇプロトコルに従った文字列に変換し、各文字列に変換された各ログ情報（即ち優先ログ情報）をログ管理サーバ１００に送信する。これにより、優先ログ情報がログ管理サーバ１００に記憶される。なお、ＣＰＵ２２は、複数個のログ情報が存在する場合には、複数個のログ情報を含む１個のファイルをログ管理サーバ１００に送信してもよいし、複数個のログ情報のそれぞれを１個のファイルとしてログ管理サーバ１００に送信してもよい（即ち複数個のファイルをログ管理サーバ１００に送信してもよい）。また、ログテーブル３６内のログ情報のうち優先ログ情報以外のログ情報は、ログ管理サーバ１００に送信されない。Ｓ７０の処理が終了すると、図４の処理が終了する。
【００４６】
（全ログ送信処理；図５）
図５を参照して、図４のＳ１００で実行される全ログ送信処理について説明する。全ログ送信処理は、ログ情報送信処理が実行されるタイミング（即ち、第２の周期が到来するタイミング）で計測日時を示す計測日時情報が取得される場合（図５のＳ５０でＹＥＳ）に実行される。
【００４７】
Ｓ１１２では、ログプログラム３０は、日時情報を含まないログ情報がログテーブル３６に記憶されているのか否かを判断する。ログプログラム３０は、日時情報を含まないログ情報がログテーブル３６に記憶されていると判断する場合（Ｓ１１２でＹＥＳ）に、Ｓ１１４に進み、日時情報を含まないログ情報がログテーブル３６に記憶されていないと判断する場合（Ｓ１１２でＮＯ）に、Ｓ１１４、Ｓ１１６をスキップしてＳ１１８に進む。
【００４８】
Ｓ１１４では、ログプログラム３０は、計測期間要求を期間管理プログラム２６ｂに供給して、期間管理プログラム２６ｂから計測期間情報を取得する。これにより、ログプログラム３０は、ログ情報送信処理が実行されるタイミングで期間管理プログラム２６ｂによって計測された経過期間を示す計測期間情報を取得することができる。
【００４９】
Ｓ１１６では、ログプログラム３０は、まず、ログテーブル３６から日時情報を含まない１個以上のログ情報を特定し、特定済みの１個以上のログ情報の中から１個のログ情報を選択する。そして、選択済みのログ情報内の期間情報によって示される経過期間と、図４のＳ５０で取得された計測日時情報によって示される日時と、Ｓ１１４で取得された計測期間情報によって示される経過期間と、を利用して、選択済みのログ情報によって示されるイベントが発生した日時を算出する。具体的には、ログプログラム３０は、計測日時情報によって示される日時から計測期間情報によって示される経過期間を減算することによって、プリンタ１０の電源がオンされた日時を算出する。次いで、ログプログラム３０は、算出済みの日時に選択済みのログ情報内の期間情報によって示される経過期間を加算することによって、当該イベントが発生した日時を算出する。そして、ログプログラム３０は、算出済みの日時を示す日時情報を選択済みのログ情報内の日時情報としてログテーブル３６に記憶する。
【００５０】
ログプログラム３０は、特定済みの１個以上のログ情報（即ち日時情報を含まない１個以上のログ情報）のうちの他のログ情報についても同様の処理を実行する。これにより、特定済みの１個以上のログ情報のそれぞれが、当該ログ情報によって示されるイベントが発生した日時を示す日時情報を含むことになる。また、ログプログラム３０は、特定済みの１個以上のログ情報に含まれる１個以上の期間情報を削除する。Ｓ１１６が終了するとＳ１１８に進む。
【００５１】
Ｓ１１８では、ログプログラム３０は、Ｓｙｓｌｏｇプログラムに従って、ログテーブル３６に記憶されている全てのログ情報をログ管理サーバ１００に送信する。具体的には、ログプログラム３０は、全てのログ情報のそれぞれをＳｙｓｌｏｇプロトコルに従った文字列に変換し、各文字列に変換された各ログ情報をログ管理サーバ１００に送信する。
【００５２】
Ｓ１２０では、ログプログラム３０は、ログテーブル３６内の全てのログ情報及び全てのログ番号を削除する。Ｓ１２０が終了すると、図５の処理が終了する。
【００５３】
（具体的なケース；図６、図７）
図６、図７を参照して、図２〜図５の処理によって実現される具体的なケースについて説明する。図６は、本ケースにおいてプリンタ１０、ログ管理サーバ１００、及び、タイムサーバ２００が実行する処理のシーケンスを示し、図７は、本ケースにおいてプリンタ１０のログテーブル３６及びログ管理サーバ１００に記憶される情報を示す。
【００５４】
本ケースでは、まず、Ｔ４０において、９月１３日１０時００分にプリンタ１０の電源がオンされる。これにより、プリンタ１０は、現在日時要求をタイムサーバ２００に送信する（図２のＴ１４）。本ケースでは、タイムサーバ２００に不具合が発生しているため、プリンタ１０は、タイムサーバ２００から現在日時情報を受信できない。この結果、現時点において、計測日時は現在日時に変更されない。なお、図６では、日時を表記する場合において、日付（即ち９月１３日）を示す文字の表記が省略されている。
【００５５】
本ケースでは、９月１３日１０時００分にプリンタ１０の電源がオンされてから第２の周期が到来する９月１３日１０時０５分までの間に、タイムサーバ２００の不具合は解消しない。また、９月１３日１０時００分から９月１３日１０時０５分までの間に３個のイベントが発生する（図７参照）。３個のイベントは、ユーザ認証が９月１３日１０時０１分に実行されて、ユーザ認証が失敗するイベント（即ちログ番号「log01」に対応するイベント）と、印刷処理が９月１３日１０時０２分に実行されて、印刷処理が成功するイベント（即ちログ番号「log02」に対応するイベント）と、印刷処理が９月１３日１０時０３分に実行されて、印刷処理が成功するイベント（即ちログ番号「log03」に対応するイベント）と、を含む。この結果、ログテーブル３６には、３個のイベントのログを示す３個のログ情報が記憶され、３個のログ情報のそれぞれは、日時情報を含まない。
【００５６】
プリンタ１０は、第２の周期が到来する９月１３日１０時０５分にログ情報送信処理（図４）を実行する。現時点において、計測日時は現在日時に変更されていない。このため、図６に示すように、プリンタ１０は、Ｔ５０において、計測日時情報を取得できない（図４のＳ５０でＮＯ）。プリンタ１０は、３個のログ情報からログ番号「log01」に対応するログ情報を選択する場合（Ｓ６０）に、ログ番号「log01」に対応するログ情報に含まれるイベント情報によって示されるイベントの内容が優先イベントリスト３２に含まれると判断する（Ｓ６２でＹＥＳ）。そして、プリンタ１０は、Ｔ５２において、ログ番号「log01」に対応するログ情報を優先ログ情報として決定する。なお、ログ番号「log02」、「log03」に対応する２個のログ情報のそれぞれは、各ログ情報に含まれる各イベント情報によって示されるイベントの内容が優先イベントリスト３２に含まれないので、優先ログ情報として決定されない（Ｓ６２でＮＯ）。
【００５７】
Ｔ５４では、プリンタ１０は、優先ログ情報として決定されたログ番号「log01」に対応するログ情報をＳｙｓｌｏｇプロトコルに従った文字列に変換し、当該文字列に変換された優先ログ情報をログ管理サーバ１００に送信する（図４のＳ７０）。Ｓｙｓｌｏｇプロトコルに従った文字列は、ＰＲＩ部と、ＨＥＡＤＥＲ部と、ＭＥＳＳＡＧＥ部と、を含む。ＰＲＩ部は、システムの種類を示すＦａｃｉｌｉｔｙの値とイベントの重要度を示すＰｒｉｏｒｉｔｙの順位とに基づいて算出される値である。ＨＥＡＤＥＲ部は、日時情報を示す文字列を含む。ＭＥＳＳＡＧＥ部は、イベント情報を示す文字列（例えば「authentication, result = fail」）を含む。なお、優先ログ情報は日時情報を含まないので、優先ログ情報内のＨＥＡＤＥＲ部は、日時情報を示す文字列を含まない。図６のＴ５４では、ＨＥＡＤＥＲ部の表記が省略されている。
【００５８】
ログ管理サーバ１００は、Ｔ５４において、プリンタ１０からＳｙｓｌｏｇプロトコルに従った優先ログ情報を受信すると、Ｔ５６において、受信済みの優先ログ情報を記憶する（図７参照）。
【００５９】
続けて、本ケースでは、９月１３日１０時０５分から第１の周期が到来する９月１３日１０時０６分の間にタイムサーバ２００の不具合が解消する。プリンタ１０は、Ｔ６４において、第１の周期が到来することをトリガとして現在日時要求をタイムサーバ２００に送信し、Ｔ６６において、タイムサーバ２００から現在日時情報を取得する。これにより、Ｔ６８において、計測日時が取得済みの現在日時情報によって示される現在日時に変更される。
【００６０】
続けて、本ケースでは、プリンタ１０は、計測日時が現在日時に変更された後に第２の周期が到来する９月１３日１０時１０分にログ情報送信処理（図４）を実行する。図６に示すように、プリンタ１０は、Ｔ８０において、９月１３日１０時１０分を示す計測日時情報「Sep-13 10:10」を取得する（図４のＳ５０でＹＥＳ）。そして、プリンタ１０は、全ログ送信処理（図５）を実行する（Ｓ１００）。
【００６１】
Ｔ８２では、プリンタ１０は、日時情報を含まない３個のログ情報（即ちログ番号「log01」〜「log03」に対応する３個のログ情報）がログテーブル３６に記憶されていると判断する（図５のＳ１１２でＹＥＳ）。
【００６２】
Ｔ８４では、プリンタ１０は、電源がオンされてから９月１３日１０時１０分までの経過期間を示す計測期間情報「00:10:00」を取得する（図５のＳ１１４）。
【００６３】
Ｔ８６では、プリンタ１０は、ログ番号「log01」〜「log03」に対応する３個のログ情報のそれぞれについて、日時情報を算出する（図５のＳ１１６）。具体的には、プリンタ１０は、取得済みの計測日時情報によって示される９月１３日１０時１０分から取得済みの計測期間情報によって示される経過期間「１０分」を減算して、プリンタ１０の電源がオンされた日時である９月１３日１０時００分を算出する。そして、プリンタ１０は、算出済みの９月１３日１０時００分にログ番号「log01」に対応するログ情報内の期間情報によって示される経過期間「１分」を加算して、ログ番号「log01」に対応するログ情報によって示されるイベントが発生した日時である９月１３日１０時０１分を示す日時情報「Sep-13 10:01」を算出する。プリンタ１０は、ログ番号「log02」、「log03」に対応する２個のログ情報についても同様に、当該ログ情報によって示されるイベントが発生した日時である同日１０時０２分、同日１０時０３分を示す２個の日時情報「Sep-13 10:02」、「Sep-13 10:03」を算出する。この結果、図７に示すように、ログテーブル３６には、ログ番号「log01」〜「log03」に対応付けて、３個の日時情報「Sep-13 10:01」、「Sep-13 10:02」、「Sep-13 10:03」が記憶される。
【００６４】
図６に示すように、Ｔ８８では、プリンタ１０は、Ｓｙｓｌｏｇプログラムに従って、ログテーブル３６に記憶されているログ番号「log01」〜「log03」に対応する３個のログ情報をログ管理サーバ１００に送信する（図５のＳ１１８）。
【００６５】
ログ管理サーバ１００は、Ｔ８８において、プリンタ１０からＳｙｓｌｏｇプロトコルに従った３個のログ情報を受信すると、Ｔ９０において、受信済みの３個のログ情報を記憶する（図７参照）。
【００６６】
また、プリンタ１０は、ログ管理サーバ１００へのログ情報の送信が終了すると、Ｔ９２において、ログテーブル３６内のログ番号「log01」〜「log03」に対応する３個のログ情報及びログ番号「log01」〜「log03」を削除する（図６のＳ１２０）。
【００６７】
（本実施例の効果）
プリンタ１０は、日時管理プログラム２６ａによって計測される日時が現在日時に変更される前において、現在日時を知り得ないので、イベント（例えばユーザ認証が失敗）が発生した日時も知り得ない。図６のケースによれば、プリンタ１０の電源がオンされてから９月１３日１０時０５分までに、優先イベントリスト３２に含まれる内容であるユーザの認証の失敗である１個のイベントと、優先イベントリスト３２に含まれない内容である印刷処理の成功である２個のイベントと、を含む３個にイベントが発生する。本ケースでは、プリンタ１０は、ユーザ認証が失敗したイベントが発生した日時（即ち９月１３日１０時０１分）を知り得ないにも関わらず、ユーザ認証が失敗したイベントのログを示す優先ログ情報（即ちログ番号「log01」に対応するログ情報）をログ管理サーバ１００に送信する（図６のＴ５４）。ログ管理サーバ１００は、ユーザ認証が失敗したイベントが発生した日時を知ることはできなくても、プリンタ１０が現在日時情報を取得する前の同日１０時０５分にプリンタ１０においてユーザ認証が失敗したイベントが発生したことを知ることができる。即ち、ログ管理サーバ１００は、ユーザ認証が失敗したイベントが発生したことを迅速に知ることができる。また、プリンタ１０は、プリンタ１０が現在日時情報を取得した後の同日１０時１０分に印刷処理が成功した２個のイベントが発生した日時を示す２個の日時情報を算出して（Ｔ８６）、当該２個のイベントのログを示す２個のログ情報（即ちログ番号「log02」、「log03」に対応する２個のログ情報）をログ管理サーバ１００に送信する（Ｔ８８）。これにより、ログ管理サーバ１００は、印刷処理が成功した２個のイベントが発生したことを知ることができるともに、当該２個のイベントが発生した２個の日時（即ち、同日１０時０２分、同日１０時０３分）を知ることができる。即ち、プリンタ１０は、プリンタ１０が現在日時とは異なる日時を計測している状況において、プリンタ１０において優先イベントリスト３２に含まれる内容を有するイベント（即ち第三者によって不正に行われる行為に起因する可能性が高いイベント）が発生したことをログ管理サーバ１００に迅速に送信することができる。一方、プリンタ１０は、優先イベントリスト３２に含まれない内容を有するイベントについては、当該イベントが発生した日時を知った後にログ管理サーバ１００に送信することができる。
【００６８】
また、プリンタ１０は、日時情報を含まない優先ログ情報をログ管理サーバ１００に送信した後にプリンタ１０が現在日時情報を取得した場合（図６のＴ６６）に、優先ログ情報によって示されるイベントが発生した日時を示す日時情報を算出する（Ｔ８６）。そして、プリンタ１０は、算出済みの日時情報を含むログ番号「log01」に対応するログ情報（即ち優先ログ情報のログと同じログを示すログ情報）をログ管理サーバ１００に送信する（Ｔ８８）。これにより、ログ管理サーバ１００は、優先ログ情報をログ管理サーバ１００に送信した後に、優先ログ情報によって示されるイベントが発生した日時を知ることができる。
【００６９】
（対応関係）
プリンタ１０、メモリ２４、ログ管理サーバ１００が、それぞれ、「通信装置」、「メモリ」、「サーバ」の一例である。日時管理プログラム２６ａ、期間管理プログラム２６ｂが、それぞれ、「日時計測部」、「期間計測部」の一例である。優先イベントリスト３２に含まれる内容を有するイベントが、「所定のイベント」の一例である。図６のＴ５４の優先ログ情報が、「特定のログ情報」の一例である。図７のログ番号「log02」に対応するログ情報の「boot = 00:02:00」が、「第１の期間情報」の一例である。図６の第２の周期が到来した９月１３日１０時１０分が、「第１（又は第２）のタイミング」の一例である。図６のＴ８８のログ番号「log02」に対応するログ情報が、「第１のログ情報」の一例である。図７のログ番号「log02」に対応するログ情報の日時情報「Sep-13 10:02」が、「第１の日時情報」の一例である。図７のログ番号「log01」に対応するログ情報の「boot = 00:01:00」が、「第２の期間情報」の一例である。図６のＴ８８のログ番号「log01」に対応するログ情報が、「第２のログ情報」の一例である。
【００７０】
図６のＴ５４、図３のＳ２０、図６のＴ８６、Ｔ８８が、それぞれ、「第１の送信部」、「第１の記憶制御部」、「第１の算出部」、「第２の送信部」によって実現される処理の一例である。
【００７１】
（第２実施例）
第１実施例では、プリンタは、優先ログ情報を送信した後に、優先ログ情報の日時を算出して、優先ログ情報によって示されるイベントが発生した日時を含むログ情報を送信する。これに代えて、第２実施例では、プリンタ１０は、優先ログ情報を送信した後に、日時を算出するための基準情報を外部装置（例えば端末装置３００）に送信する。
【００７２】
本実施例では、メモリ２４は、さらに、期間ＩＤを記憶し得る。期間ＩＤは、期間管理プログラム２６ｂによって計測される経過期間を識別するためのユニークな情報である。期間ＩＤは、プリンタ１０の電源がオンされる毎に生成される。
【００７３】
また、メモリ２４は、さらに、送信フラグを記憶する。送信フラグは、優先ログ情報を送信したことを示す「ＯＮ」と、優先ログ情報を未だ送信していないことを示す「ＯＦＦ」と、のうちのいずれかの値を示す。送信フラグのデフォルト値は「ＯＦＦ」である。
【００７４】
（ログ情報記憶処理；図３）
本実施例のログ情報記憶処理は、Ｓ２０の処理の内容が異なる点を除いて、第１実施例と同様である。ログプログラム３０は、Ｓ２０において、取得済みの計測期間情報（例えば文字列「boot = 00:01:00」）と、期間ＩＤ（例えば、文字列「a01」）と、を含むログ情報をログテーブル３６に記憶する。
【００７５】
（ログ情報送信処理；図４）
本実施例のログ情報送信処理は、Ｓ７０の処理の後にＳ７２、Ｓ７４の処理が実行される点とＳ１００の全ログ送信処理の内容が異なる点を除いて、第１実施例と同様である。ログプログラム３０は、Ｓ７０において、優先ログ情報をログ管理サーバ１００に送信すると、Ｓ７２において、送信フラグを「ＯＦＦ」から「ＯＮ」に変更する。
【００７６】
Ｓ７４では、ログプログラム３０は、ログテーブル３６内の優先ログ情報として決定された１個以上のログ情報と対応するログ番号を削除する。Ｓ７４が終了すると、図４の処理が終了する。
【００７７】
（全ログ送信処理：図８）
図８を参照して、本実施例の全ログ送信処理の内容を説明する。Ｓ１４０は、図５のＳ１１４と同様である。Ｓ１４２では、ログプログラム３０は、ログテーブル３６にログ情報が記憶されているのか否かを判断する。ログプログラム３０は、ログテーブル３６にログ情報が記憶されていると判断する場合（Ｓ１４２でＹＥＳ）に、Ｓ１５２に進む。一方、ログプログラム３０は、ログテーブル３６内に１個のログ情報も記憶されていないと判断する場合に、Ｓ１５２〜Ｓ１６０の処理をスキップして、Ｓ１７０に進む。
【００７８】
Ｓ１５２〜Ｓ１６０、は、図５のＳ１１２〜Ｓ１２０と同様である。ログプログラム３０は、ログテーブル３６内の全てのログ情報の送信と削除を終えると（Ｓ１５８、Ｓ１６０）、Ｓ１７０に進む。
【００７９】
Ｓ１７０では、ログプログラム３０は、送信フラグが「ＯＮ」を示し、かつ、後述する基準情報が未だ送信されていないことを示す所定の条件が満たされるのか否かを判断する。ログプログラム３０は、所定の条件が満たされる場合（Ｓ１７０でＹＥＳ）に、Ｓ１７２に進み、所定の条件が満たされない場合（Ｓ１７０でＮＯ）に、Ｓ１７２、Ｓ１７４の処理をスキップして、Ｓ１８４に進む。
【００８０】
Ｓ１７２では、ログプログラム３０は、メモリ２４内のメールアドレスＭＡを宛先として、基準情報が記述された本文を含む電子メールを送信する。基準情報は、ログ管理サーバ１００に送信された優先ログ情報によって示されるイベントが発生した日時を示す日時情報を算出するための情報である。基準情報は、図４のＳ５０で取得した計測日時情報とＳ１４０で取得した計測期間情報と期間ＩＤを含む。電子メールが送信されると、管理者は、例えば、端末装置３００を操作して、電子メール内の本文に記述された基準情報を見ることができる。これにより、管理者は、端末装置３００を操作して、ログ管理サーバ１００にアクセスして、電子メール内の期間ＩＤを含む優先ログ情報を特定する。そして、管理者は、特定済みの優先ログ情報内の期間情報と、電子メール内の各情報（即ち計測日時情報、計測期間情報）と、を利用して、特定済みの優先ログ情報によって示されるイベントが発生した日時を示す日時情報を算出することができる。即ち、期間ＩＤは、優先ログ情報を識別するための情報である。なお、日時情報を算出する方法は、図５のＳ１１６において説明した方法と同様である。
【００８１】
Ｓ１７４では、ログプログラム３０は、基準情報をＳｙｓｌｏｇプロトコルに従った文字列に変換し、当該文字列に変換された基準情報（以下、「基準ログ情報」と記載）をログ管理サーバ１００に送信する。これにより、ログ管理サーバ１００において基準情報をログ情報と同様に管理することができる。また、例えば、基準ログ情報を受信したログ管理サーバ１００は、ログ管理サーバ１００に記憶されている複数個の優先ログ情報の中から基準ログ情報内の期間ＩＤを含む優先ログ情報を特定する。そして、ログ管理サーバ１００は、特定済みの優先ログ情報内の期間情報と、基準ログ情報内の各情報（即ち計測日時情報、計測期間情報）と、を利用して、特定済みの優先ログ情報によって示されるイベントが発生した日時を示す日時情報を算出することができる。なお、日時情報を算出する方法は、図５のＳ１１６において説明した方法と同様である。
【００８２】
Ｓ１８４では、ログプログラム３０は、メモリ２４内の期間ＩＤを削除する。Ｓ１８４が終了すると、図８の処理が終了する。
【００８３】
例えば、ログテーブル３６に１個のログ情報も記憶されていないと判断され、かつ、送信フラグが「ＯＦＦ」を示すと判断される特定の場合（Ｓ１４２でＮＯ、Ｓ１７０でＮＯ）に、Ｓ１８４の処理が実行される。特定の場合は、プリンタ１０の電源がオンされてから日時管理プログラム２６ａによって計測される日時が現在日時に変更されるまでの間にイベントが発生しておらず、その結果、優先ログ情報がログ管理サーバ１００に送信されていないことを意味する。特定の場合では、期間ＩＤは不要である。この構成によれば、不要な期間ＩＤによってメモリ２４の記憶容量が減少することを防止することができる。
【００８４】
（具体的なケースＢ１；図９、図１０）
図９、図１０を参照して、図２〜図４、図８の処理によって実現される具体的なケースＢ１について説明する。図９は、本ケースにおいてプリンタ１０、ログ管理サーバ１００、及び、タイムサーバ２００が実行する処理のシーケンスを示し、図１０は、本ケースにおいてプリンタ１０のログテーブル３６及びログ管理サーバ１００に記憶される情報を示す。
【００８５】
Ｔ１００は、図６のＴ４０と同様である。本ケースでは、プリンタ１０は、Ｔ１０２において、期間ＩＤ「a01」を生成し、期間ＩＤ「a01」をメモリ２４に記憶する。本ケースも、図６のケースと同様に、タイムサーバ２００に不具合が発生している。このため、現時点において、計測日時は現在日時に変更されない。
【００８６】
本ケースでも、９月１３日１０時００分にプリンタ１０の電源がオンされてから第２の周期が到来する９月１３日１０時０５分までの間に、タイムサーバ２００の不具合は解消せず、さらに、図６のケースと同様の３個のイベントが発生する。なお、本ケースでは、３個のイベントのログを示す３個のログ情報（即ち、ログ番号「log01」〜「log03」に対応する３個のログ情報）には、期間ＩＤ「a01」が含まれる（図１０参照）。
【００８７】
Ｔ１５０〜Ｔ１５２は、図６のＴ５０、Ｔ５２と同様である。Ｔ１５４は、優先ログ情報に期間ＩＤ「a01」が含まれることを除き、図６のＴ５４と同様である。Ｔ１５６は、図６のＴ５６と同様である。
【００８８】
プリンタ１０は、Ｔ１５４において、優先ログ情報をログ管理サーバ１００に送信すると、Ｔ１５８において、送信フラグを「ＯＦＦ」から「ＯＮ」に変更する（図４のＳ７２）。
【００８９】
Ｔ１５９では、プリンタ１０は、ログテーブル３６内の優先ログ情報として決定されたログ番号「log01」に対応するログ情報を削除する（図４のＳ７４）。この結果、ログテーブル３６には、ログ番号「log02」、「log03」に対応する２個のログ情報が残る（図１０参照）。
【００９０】
図９のＴ１６４〜Ｔ１６８は、図６のＴ６４〜Ｔ６８と同様である。Ｔ１８０では、プリンタ１０は、図６のＴ８０と同様に、９月１３日１０時１０分を示す計測日時情報「Sep-13 10:10」を取得する（図４のＳ５０でＹＥＳ）。そして、プリンタ１０は、全ログ送信処理（図８）を実行する（Ｓ１００）。
【００９１】
Ｔ１８４では、プリンタ１０は、電源がオンされてから９月１３日１０時１０分までの経過期間を示す計測期間情報「00:10:00」を取得する（図８のＳ１４０）。
【００９２】
Ｔ１８６では、プリンタ１０は、ログテーブル３６内にログ番号「log02」、「log03」に対応する２個のログ情報が記憶されていると判断し（図８のＳ１４２でＹＥＳ）、当該２個のログ情報のそれぞれが日時情報を含まないと判断する（Ｓ１５２でＹＥＳ）。そして、プリンタ１０は、ログ番号「log02」、「log03」に対応する２個のログ情報のそれぞれについて、日時情報を算出する（Ｓ１５６）。なお、日時情報を算出する方法は、図６のＴ８６と同様である。
【００９３】
Ｔ１８８では、プリンタ１０は、ログ番号「log02」、「log03」に対応する２個のログ情報をログ管理サーバ１００に送信する（図８のＳ１５８）。Ｔ１９０は、ログ番号「log02」、「log03」に対応する２個のログ情報がログ管理サーバ１００に記憶される点を除いて、図６のＴ９０と同様である。Ｔ１９２では、プリンタ１０は、ログテーブル３６内のログ番号「log02」、「log03」に対応する２個のログ情報及びログ番号「log02」、「log03」を削除する（図８のＳ１６０）。
【００９４】
Ｔ２００では、プリンタ１０は、送信フラグが「ＯＮ」を示し、かつ、後述する基準情報が未だ送信されていないと判断し（図８のＳ１７０でＹＥＳ）、基準情報「base Sep-13 10:00 boot = 00:10:00(a01)」が記述された本文を含む電子メールを送信する（図８のＳ１７２）。続けて、Ｔ２０２において、プリンタ１０は、基準情報「base Sep-13 10:00 boot = 00:10:00(a01)」をＳｙｓｌｏｇプロトコルに従った文字列に変換した基準ログ情報をログ管理サーバ１００に送信する（Ｓ１７４）。
【００９５】
ログ管理サーバ１００は、プリンタ１０から基準ログ情報を受信すると、Ｔ２０４において、基準ログ情報を記憶する。
【００９６】
また、Ｔ２０６では、プリンタ１０は、メモリ２４内の期間ＩＤ「a01」を削除する（図８のＳ１８４）。
【００９７】
本ケースによれば、プリンタ１０は、優先イベントリスト３２に含まれる内容を有するイベントの内容については、現在日時情報を取得する前に迅速に知らせることができるとともに、それ以外のイベントの内容については、現在日時情報を取得した後にそのイベントが発生した日時とともに知らせることができる。本ケースでも、第１実施例と同様の効果を得ることができる。また、本ケースでは、上記したように、基準情報を含む電子メール及び基準ログ情報が送信されることによって、優先ログ情報によって示されるイベントが発生した日時を算出することができる（図９のＴ２００、Ｔ２０２）。
【００９８】
（具体的なケースＢ２；図１１）
図１１を参照して、図２〜図４、図８の処理によって実現される具体的なケースＢ２について説明する。本ケースでも、図９のケースＢ１と同様に、Ｔ１００〜Ｔ２０６の処理が実行される。さらに、本ケースでは、Ｔ２０８において、期間ＩＤ「a01」が削除された後に、プリンタ１０の電源がオフされる。
【００９９】
続けて、本ケースでは、Ｔ３００において、９月１３日１８時００分にプリンタ１０の電源がオンされる。そして、プリンタ１０は、Ｔ３０２において、期間ＩＤ「a02」を生成する。現時点では、タイムサーバ２００に不具合が発生しており、タイムサーバ２００から現在日時情報が受信できない。
【０１００】
本ケースでは、９月１３日１８時００分にプリンタ１０の電源がオンされてから第２の周期が到来する９月１３日１８時０５分までの間に、タイムサーバ２００の不具合は解消しない。また、９月１３日１８時００分から９月１３日１８時０５分までの間に、ユーザ認証が失敗したイベントを含む複数個のイベントが発生する。この結果、プリンタ１０は、Ｔ３５４において、Ｔ１５４と同様に、ユーザ認証が失敗したイベントのログを示す優先ログ情報をログ管理サーバ１００に送信する（図５の７０）。Ｔ３５６は、優先ログ情報内の期間ＩＤが「a02」である点を除いて、Ｔ１５６と同様である。
【０１０１】
続けて、本ケースでは、９月１３日１８時０５分から第１の周期が到来する９月１３日１８時０６分の間にタイムサーバ２００の不具合が解消する。この結果、タイムサーバ２００から現在日時情報が受信される。
【０１０２】
続けて、本ケースでは、計測日時が現在日時に変更された後に第２の周期が到来する９月１３日１８時１０分にログ情報送信処理（図４）を実行する。この結果、プリンタ１０は、Ｔ４０２において、期間ＩＤ「a02」を含む基準ログ情報をログ管理サーバ１００に送信する（図８のＳ１７４）。Ｔ４０４は、基準ログ情報内の期間ＩＤが「a02」である点を除いて、Ｔ２０４と同様である。Ｔ４０６は、期間ＩＤ「a02」が削除される点を除いて、Ｔ２０６と同様である。
【０１０３】
図１１に示すように、ログ管理サーバ１００は、期間ＩＤ「a01」を含む優先ログ情報Ｌ１と、期間ＩＤ「a01」を含む基準ログ情報Ｌ２と、期間ＩＤ「a02」を含む優先ログ情報Ｌ３と、期間ＩＤ「a02」を含む基準ログ情報Ｌ４と、を含む複数個のログ情報を記憶する。例えば、ログ管理サーバ１００は、複数個のログ情報の中から基準ログ情報Ｌ２内の期間ＩＤ「a01」を含む優先ログ情報Ｌ１を特定する。そして、ログ管理サーバ１００は、特定済みの優先ログ情報Ｌ１内の期間情報と、基準ログ情報Ｌ２内の各情報（即ち計測日時情報、計測期間情報）と、を利用して、優先ログ情報Ｌ１によって示されるイベントが発生した日時を示す日時情報を算出することができる。同様に、ログ管理サーバ１００は、基準ログ情報Ｌ４内の期間ＩＤ「a02」を利用して、優先ログ情報Ｌ３を特定し、優先ログ情報Ｌ３によって示されるイベントが発生した日時を示す日時情報を算出することができる。本ケースによれば、プリンタ１０の電源をオンする操作が複数回に亘って実行される場合でも、基準ログ情報と優先ログ情報との組み合わせを特定することができ、この結果、優先ログ情報によって示されるイベントが発生した日時を示す日時情報を適切に算出することができる。
【０１０４】
（対応関係）
図１０のログ番号「log01」に対応するログ情報の「boot = 00:01:00」が、「第１の期間情報」の一例である。図９の第２の周期が到来した９月１３日１０時１０分が、「第３のタイミング」の一例である。図９のＴ２００の基準情報が、「基準情報」の一例である。端末装置３００又はログ管理サーバ１００が、「外部装置」の一例である。期間ＩＤが、「ログ識別情報（及び期間識別情報）」の一例である。期間ＩＤ「a01」が、「特定の期間識別情報」の一例である。
【０１０５】
図９のＴ１５４、図３のＳ２０、図９のＴ１８６、Ｔ１８８が、それぞれ、「第１の送信部」、「第１の記憶制御部」、「第１の算出部」、「第２の送信部」によって実現される処理の一例である。
【０１０６】
（参考例）
第２実施例を変更した参考例を説明する。第２実施例では、図４のログ情報送信処理において、Ｓ６２の処理が実行される。これに代えて、ログプログラム３０は、日時管理プログラム２６ａから未変更通知が取得されたと判断する場合（Ｓ５０でＮＯ）に、Ｓ６２の判断を実行することなく、ログテーブル３６内の全てのログ情報をログ管理サーバ１００に送信してもよい。この場合、図９のケースでは、Ｔ１５２の処理が実行されず、Ｔ１５４において、日時情報を含まない３個のログ情報がログ管理サーバ１００に送信されてもよい。そして、Ｔ２００において、基準情報が含まれる電子メールが送信されてもよい。これにより、計測日時が現在日時に変更される前にイベントが発生する場合でも、当該イベントの内容を迅速にログ管理サーバ１００に知らせることができるとともに、計測日時が現在日時に変更された後に、電子メール内の基準情報を利用して、３個のログ情報の各イベントが発生した日時を算出することができる。
【０１０７】
本参考例の特徴を以下に記載する。通信装置であって、日時を計測する日時計測部であって、現在日時を示す現在日時情報が取得される場合に、前記日時計測部によって計測される日時は、取得済みの前記現在日時情報によって示される前記現在日時に変更される、前記日時計測部と、前記通信装置の電源がオンされてからの経過期間を計測する期間計測部と、前記日時計測部によって計測される日時が前記現在日時に変更される前に、前記通信装置において特定のイベントが発生する場合に、前記特定のイベントのログを示す第１のログ情報をサーバに送信する第１の送信部であって、前記第１のログ情報は、前記特定のイベントが発生する第１のタイミングで前記期間計測部によって計測された経過期間を含む、前記第１の送信部と、前記第１のログ情報が前記サーバに送信された後に、前記日時計測部によって計測される日時が前記現在日時に変更される場合に、前記日時計測部によって計測される日時が前記現在日時に変更された後の第２のタイミングで、前記特定のイベントが発生した日時を示す日時情報を算出するための基準情報を外部装置に送信する第２の送信部であって、前記基準情報は、前記第２のタイミングで前記日時計測部によって計測された日時と、前記第２のタイミングで前記期間計測部によって計測された経過期間と、を含む、前記第２の送信部を備える、通信装置。
【０１０８】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【０１０９】
（変形例１）「通信装置」は、プリンタ１０でなくてもよく、例えば、スキャナ、多機能機、携帯端末、ＰＣ、サーバ等の他のデバイスであってもよい。
【０１１０】
（変形例２）日時管理プログラム２６ａ、期間管理プログラム２６ｂは、ＯＳプログラム２６に含まれていなくてもよい。例えば、日時管理プログラム２６ａ、期間管理プログラム２６ｂは、ログプログラム３０に含まれていてもよい。一般的に言えば、「コンピュータプログラム」は、通信装置のコンピュータを、日時計測部と、期間計測部と、として機能させてもよい。
【０１１１】
（変形例３）上記の各実施例では、プリンタ１０は、ＣＰＵ２２が日時管理プログラム２６ａに従って日時を計測する。これに代えて、プリンタ１０は、ＣＰＵ２２とは別体の時計を備えていてもよい。また、上記の各実施例では、プリンタ１０は、ＣＰＵ２２が期間管理プログラム２６ｂに従って経過期間を計測する。これに代えて、プリンタ１０は、ＣＰＵ２２とは別体のカウンタを備えていてもよい。本変形例では、別体の時計、別体のカウンタが、それぞれ、「日時計測部」、「期間計測部」の一例である。
【０１１２】
（変形例４）上記の各実施例では、プリンタ１０は、タイムサーバ２００から現在日時情報を受信する（図２のＴ１６）。これに代えて、プリンタ１０は、プリンタ１０の操作部がユーザによって操作されることによって、現在日時情報がユーザによってプリンタ１０に入力されてもよい。本変形例では、現在日時情報がユーザによってプリンタ１０に入力されることが、「現在日時を示す現在日時情報が取得される場合」の一例である。
【０１１３】
（変形例５）上記の各実施例では、ログ情報は、プリンタ１０内のメモリ２４に記憶される。これに代えて、ログ情報は、プリンタ１０とは別体のメモリに記憶されてもよい。本変形例では、別体のメモリが、「メモリ」の一例である。
【０１１４】
（変形例６）上記の第１実施例において、プリンタ１０は、優先ログ情報を送信した後に、優先ログ情報と同じログを示すログ情報であって、日時情報を含むログ情報をログ管理サーバ１００に送信する（図６のＴ８８）。これに代えて、プリンタ１０は、Ｔ８８において、優先ログ情報と同じログを示すログ情報をログ管理サーバ１００に送信しなくてもよい。本変形例では、「第２の記憶制御部」、「第２の算出部」、「第３の送信部」を省略可能である。
【０１１５】
（変形例７）「外部装置」は、ログ管理サーバ１００でなくてもよく、例えば、ログ管理サーバ１００とは異なる他のサーバであってもよい。この場合、例えば、ログ管理サーバ１００は、他のサーバに基準情報が送信された後に、他のサーバから基準情報を受信する。そして、受信済みの基準情報と、ログ管理サーバ１００内の優先ログ情報に含まれる期間情報と、を利用して、優先ログ情報によって示されるイベントが発生した日時を示す日時情報を算出してもよい。
【０１１６】
（変形例８）上記の第２実施例において、図８のＳ１７２とＳ１７４のうちの一方は省略されてもよい。また、上記の第２実施例において、図８のＳ１７２とＳ１７４が省略されてもよい。本変形例では、「第４の送信部」を省略可能である。
【０１１７】
（変形例９）上記の第２実施例では、プリンタ１０は、期間ＩＤを生成する（図９のＴ１０２）。これに代えて、プリンタ１０は、複数個の期間ＩＤのリストを予めメモリ２４に記憶していてもよい。そして、プリンタ１０は、プリンタ１０の電源がオンされる毎に、当該リストの中から１個の期間ＩＤを選択し、選択済みの期間ＩＤをメモリ２４内の所定の記憶領域に記憶してもよい。本変形例では、「期間識別情報」は、生成されなくてもよい。
【０１１８】
（変形例１０）上記の第２実施例では、プリンタ１０は、期間ＩＤ「a01」を含む優先ログ情報をログ管理サーバ１００に送信し（図９のＴ１５４）、期間ＩＤ「a01」を含む基準ログ情報をログ管理サーバ１００に送信する（Ｔ２０２）。これに代えて、プリンタ１０は、優先ログ情報が送信される際に、優先ログ情報を識別するためのＩＤを生成して、生成済みのＩＤを含む優先ログ情報をログ管理サーバ１００に送信してもよい。そして、当該生成済みのＩＤを含む基準ログ情報をログ管理サーバ１００に送信してもよい。本変形例では、上記のＩＤが、「ログ識別情報」の一例である。
【０１１９】
（変形例１１）上記の第２実施例において、優先ログ情報及び基準ログ情報は、期間ＩＤを含まなくてもよい。本変形例では、「通信装置」は、「ログ識別情報（又は期間識別情報）」を利用しなくてもよい。
【０１２０】
（変形例１２）図８のＳ１８４の処理は実行されなくてもよい。本変形例では、「削除部」を省略可能である。
【０１２１】
（変形例１３）上記の各実施例では、優先イベントリスト３２は、ユーザ認証の失敗である内容を含む。これに代えて、優先イベントリスト３２は、ユーザ認証の成功である内容とユーザ認証の失敗である内容を含んでもよい。さらに、本変形例では、優先イベントリスト３２は、印刷処理の成功又は失敗である内容を含まなくてもよい。上記したように、ユーザ認証は、プリンタ１０の設定情報を変更する際に実行される。このため、ユーザ認証は、第三者の外部装置から変更要求が不正に受信される場合に実行される処理である。本変形例の優先イベントリスト３２は、第三者によって不正に行われる行為が行われる場合に発生し得るイベントの内容を含む。本変形例では、「所定のイベント」は、認証処理が実行されることを含んでいてもよく、「所定のイベントとは異なるイベント」は、認証処理が実行されることを含まなくてもよい。
【０１２２】
（変形例１４）上記の各実施例では、ログ情報は、Ｓｙｓｌｏｇプロトコルに従った文字列に変換され、当該文字列に変換されたログ情報がログ管理サーバ１００に送信される（図６のＴ８８）。これに代えて、ログ情報は、Ｓｙｓｌｏｇプロトコルに従った文字列に変換されることなく、ログ管理サーバ１００に送信されてもよい。また、ログ情報は、Ｓｙｓｌｏｇプロトコル以外の所定のプロトコル（例えば、プリンタ１０のベンダによって設計されたプロトコル）に従って、ログ管理サーバ１００に送信されてよい。一般的に言えば、「特定のログ情報及び第１のログ情報」は、所定のプロトコルに従っていなくてもよく、また、Ｓｙｓｌｏｇプロトコル以外のプロトコルに従っていてもよい。
【０１２３】
（変形例１５）上記の各実施例では、プリンタ１０のＣＰＵ２２がプログラム２６、３０（即ちソフトウェア）を実行することによって、図２〜図１１の各処理が実現される。これに代えて、いずれかの処理は、論理回路等のハードウェアによって実現されてもよい。
【符号の説明】
【０１２４】
２：通信システム、１０：プリンタ、１６：ネットワークＩ／Ｆ、２０：制御部、２２：ＣＰＵ、２４：メモリ、２６：ＯＳプログラム、２６ａ：日時管理プログラム、２６ｂ：期間管理プログラム、３０：ログプログラム、３２：優先イベントリスト、３６：ログテーブル、１００：ログ管理サーバ、２００：タイムサーバ、３００：端末装置、３３０：ＳＩＥＭツール、ＭＡ：メールアドレス
【図１】
2020071671.tif 000003
【図２】
2020071671.tif 000004
【図３】
2020071671.tif 000005
【図４】
2020071671.tif 000006
【図５】
2020071671.tif 000007
【図６】
2020071671.tif 000008
【図７】
2020071671.tif 000009
【図８】
2020071671.tif 000010
【図９】
2020071671.tif 000011
【図１０】
2020071671.tif 000012
【図１１】
2020071671.tif 000013