(57)【要約】【課題】アプリケーションを実行する装置におけるアプリケーションの挙動等について、アプリケーションの動作環境を含めた解析を可能とする。【解決手段】オペレーティングシステム上で動作するアプリケーション１１６を実行する端末装置１は、アプリケーション１１６に割り当てられたサンドボックス１１０に、アプリケーション１１６を構成するプログラム及びデータを格納する。ログ生成部１１８は、サンドボックス１１０の状態に関する情報を取得してログ情報を生成し、生成したログ情報をサンドボックス１１０に記憶する。【選択図】図３
2016001418.tif 000002
【特許請求の範囲】
【請求項１】
オペレーティングシステム、及び、前記オペレーティングシステム上で動作するアプリケーションを実行する電子機器であって、
前記オペレーティングシステムの機能により前記アプリケーションに割り当てられた特定の記憶領域に、前記アプリケーションを構成するプログラム及び前記アプリケーションで処理されるデータが格納され、
前記特定の領域の状態に関する情報を取得してログ情報を生成し、生成した前記ログ情報を前記特定の領域に記憶する機能を有すること、を特徴とする電子機器。
【請求項２】
前記特定の領域の全体に関する前記ログ情報を生成すること、を特徴とする請求項１記載の電子機器。
【請求項３】
前記ログ情報は、前記特定の領域内のファイルを複製したデータ、又は、前記ファイルと前記ファイルを格納するフォルダーを複製したデータを含むことを特徴とする請求項１または２記載の電子機器。
【請求項４】
前記ログ情報は、前記特定の領域内のファイルの一覧、又は、前記ファイルと前記ファイルを格納するフォルダーの一覧を含むことを特徴とする請求項１または２記載の電子機器。
【請求項５】
前記ログ情報は、前記特定の領域に格納された設定用ファイルの内容を含むことを特徴とする請求項１または２記載の電子機器。
【請求項６】
前記特定の領域に格納された前記アプリケーションが、前記アプリケーションに割り当てられた前記特定の領域の状態に関する情報を取得してログ情報を生成し、生成した前記ログ情報を前記特定の領域に記憶させる機能を有すること、を特徴とする請求項１から５のいずれかに記載の電子機器。
【請求項７】
前記オペレーティングシステムはｉＯＳ（登録商標）またはＡｎｄｒｏｉｄ（登録商標）ＯＳであり、前記特定の領域はｓａｎｄｂｏｘであること、を特徴とする請求項１から６のいずれかに記載の電子機器。
【請求項８】
前記アプリケーションは、印刷装置と通信して印刷を実行させる機能を有し、前記ログ情報は、前記印刷装置との通信に関する情報を含むこと、を特徴とする請求項１から７のいずれかに記載の電子機器。
【請求項９】
前記ログ情報を外部装置に送信する機能を有すること、を特徴とする請求項１から８のいずれかに記載の電子機器。
【請求項１０】
オペレーティングシステム、及び、前記オペレーティングシステム上で動作するアプリケーションを実行する電子機器の制御方法であって、
前記電子機器のオペレーティングシステムの機能により、前記電子機器で動作するアプリケーションに特定の領域を割り当てて、前記特定の領域に前記アプリケーションを構成するプログラム及び前記アプリケーションで処理されるデータを格納し、
前記特定の領域の状態に関する情報を取得してログ情報を生成し、生成した前記ログ情報を前記特定の領域に記憶すること、
を特徴とする電子機器の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器、及び、電子機器の制御方法に関する。
【背景技術】
【０００２】
従来、ソフトウェアを実行する電子機器において、アプリケーションの動作に関するログを解析する手法が知られている（例えば、特許文献１参照）。ログの解析を行うと、アプリケーションの実行状態や、実行する処理の内容を知ることができる。例えば、特許文献１の装置は、Ａｎｄｒｏｉｄ（登録商標）ＯＳ上で動作するアプリケーションについて、動作結果のログを解析することにより、いわゆる悪性アプリケーションを発見する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１３７６１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記従来のように、アプリケーションの動作結果のログを利用すれば、アプリケーションの挙動を解析することが可能である。その一方で、アプリケーションの挙動をより詳細に知るためには、アプリケーションが動作したときの動作環境等を特定することも必要であるが、アプリケーションの動作結果のログを参照しても動作環境等を特定することはできなかった。
本発明は、上述した事情に鑑みてなされたものであり、アプリケーションを実行する装置におけるアプリケーションの挙動等について、アプリケーションの動作環境を含めた解析を可能とすることを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、オペレーティングシステム、及び、前記オペレーティングシステム上で動作するアプリケーションを実行する電子機器であって、前記オペレーティングシステムの機能により前記アプリケーションに割り当てられた特定の記憶領域に、前記アプリケーションを構成するプログラム及び前記アプリケーションで処理されるデータが格納され、前記特定の領域の状態に関する情報を取得してログ情報を生成し、生成した前記ログ情報を前記特定の領域に記憶する機能を有すること、を特徴とする。
本発明によれば、アプリケーションを構成するプログラム及びデータが格納される特定の領域に関するログ情報を生成するので、アプリケーションの動作環境等について詳細な情報を保存できる。このため、例えばアプリケーションの動作について、動作環境を含めた詳細な解析を行うことが可能となる。
【０００６】
また、本発明は、上記電子機器において、前記特定の領域の全体に関する前記ログ情報を生成すること、を特徴とする。
本発明によれば、特定の領域の全体に関するログを生成するので、アプリケーションの動作環境についてより詳細な情報を保存できる。
【０００７】
また、本発明は、上記電子機器において、前記ログ情報は、前記特定の領域内のファイルを複製したデータ、又は、前記ファイルと前記ファイルを格納するフォルダーを複製したデータを含むことを特徴とする。
本発明によれば、特定の領域内のファイル、又は、ファイルとフォルダーの複製をログ情報として保存できる。このため、アプリケーションの動作環境の構成、及び、その状態を再現して解析することが可能となる。
【０００８】
また、本発明は、上記電子機器において、前記ログ情報は、前記特定の領域内のファイルの一覧、又は、前記ファイルと前記ファイルを格納するフォルダーの一覧を含むことを特徴とする。
本発明によれば、特定の領域内のファイル、又は、ファイルとフォルダーの一覧をログ情報とするので、アプリケーションの動作環境の構成について詳細な情報を保存できる。また、ファイルやフォルダーの複製をログ情報に含ませる場合に比べて、ログ情報のデータ容量を抑えることができる。
【０００９】
また、本発明は、上記電子機器において、前記ログ情報は、前記特定の領域に格納された設定用ファイルの内容を含むことを特徴とする。
本発明によれば、設定用ファイルの内容を保存できるので、アプリケーションの挙動についてより詳細な解析が可能となる。
【００１０】
また、本発明は、上記電子機器において、前記特定の領域に格納された前記アプリケーションが、前記アプリケーションに割り当てられた前記特定の領域の状態に関する情報を取得してログ情報を生成し、生成した前記ログ情報を前記特定の領域に記憶させる機能を有すること、を特徴とする。
本発明によれば、アプリケーションが、当該アプリケーションに割り当てられた特定の領域のログを生成する機能を持つので、例えば他のアプリケーションに割り当てられた特定の領域を参照する必要が無い。このため、オペレーティングシステムが特定の領域の参照について制約を設けている場合であっても、この制約に制限されずにログ情報を生成できる。
【００１１】
また、上記電子機器において、前記アプリケーションとして、第１のアプリケーション、及び、前記第１のアプリケーションとは独立して動作可能な第２のアプリケーションを有し、前記第１のアプリケーション及び前記第２のアプリケーションには異なる前記特定の領域が割り当てられ、前記第１のアプリケーションは、前記第１のアプリケーションに割り当てられた前記特定の領域のログ情報を生成して、前記第１のアプリケーションに割り当てられた前記特定の領域に記憶させる構成としてもよい。
この場合、ログ情報を生成する場合に、第１のアプリケーションが、第２のアプリケーションに割り当てられた特定の領域を参照する必要が無い。このため、オペレーティングシステムが特定の領域の参照について制約を設けている場合であっても、この制約に制限されずにログ情報を生成できる。
【００１２】
また、本発明は、上記電子機器において、前記オペレーティングシステムはｉＯＳ（登録商標）またはＡｎｄｒｏｉｄ（登録商標）ＯＳであり、前記特定の領域はｓａｎｄｂｏｘであること、を特徴とする。
本発明によれば、ｉＯＳまたはＡｎｄｒｏｉｄ上で動作するアプリケーションについて、アプリケーションに割り当てられたｓａｎｄｂｏｘに関するログを生成するので、アプリケーションの動作環境等について詳細な解析が可能となる。
【００１３】
本発明は、上記電子機器において、前記ログ情報を外部装置に送信する機能を有すること、を特徴とする。
本発明によれば、アプリケーションの動作環境等について、外部の装置による解析が可能となる。また、特定の領域の容量に制限されることなくログ情報を保存できる。
【００１４】
また、本発明は、上記電子機器において、前記アプリケーションは、印刷装置と通信して印刷を実行させる機能を有し、前記ログ情報は、前記印刷装置との通信に関する情報を含むこと、を特徴とする。
本発明によれば、印刷装置により印刷を実行させるアプリケーションについて、印刷装置との通信に関する情報を含むログ情報を記録できる。また、このアプリケーションの動作環境等についても詳細な情報を保存できる。このため、印刷に関するアプリケーションの動作について動作環境を含めた詳細な解析を行うことが可能となる。
【００１５】
また、上記目的を達成するために、本発明は、オペレーティングシステム、及び、前記オペレーティングシステム上で動作するアプリケーションを実行する電子機器の制御方法であって、前記電子機器のオペレーティングシステムの機能により、前記電子機器で動作するアプリケーションに特定の領域を割り当てて、前記特定の領域に前記アプリケーションを構成するプログラム及び前記アプリケーションで処理されるデータを格納し、前記特定の領域の状態に関する情報を取得してログ情報を生成し、生成した前記ログ情報を前記特定の領域に記憶すること、を特徴とする。
本発明によれば、アプリケーションを構成するプログラム及びデータが格納される特定の領域に関するログ情報を生成するので、アプリケーションの動作環境等について詳細な情報を保存できる。このため、例えばアプリケーションの動作について、動作環境を含めた詳細な解析を行うことが可能となる。
【図面の簡単な説明】
【００１６】
【図１】実施形態に係る端末装置の構成を示すブロック図である。
【図２】端末装置のソフトウェア構成を示す図である。
【図３】端末装置のソフトウェアの機能を示す説明図である。
【図４】端末装置の動作を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、図面を参照して本発明の実施形態について説明する。
図１は、実施形態に係る端末装置１の構成を示すブロック図である。図１には端末装置１に接続されるサーバーを、合わせて図示する。
端末装置１（電子機器）は、例えば、スマートフォン、携帯型電話機、タブレット型コンピューター、パーソナルコンピューター等の機器であり、データ通信機能を備えた通信端末装置である。
【００１８】
端末装置１は、端末装置１の各部を制御するＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、及び記憶部１４を備える。ＣＰＵ１１は、ＲＯＭ１２に記憶された基本制御プログラム、及び、記憶部１４に記憶されたプログラムを実行して、端末装置１の各部を制御する。ＲＯＭ１２は、ＣＰＵ１１が実行する基本制御プログラム、及びＣＰＵ１１が処理するデータ等を記憶する。ＲＡＭ１３は、ＣＰＵ１１が実行するプログラムや処理対象のデータを一時的に記憶する。記憶部１４は、ＣＰＵ１１が実行するプログラムや処理対象のデータを不揮発的に記憶する。記憶部１４が記憶するプログラムは、端末装置１のオペレーティングシステム及びアプリケーションプログラム（アプリケーション）を含む。なお、ＲＯＭ１２と記憶部１４とは１つの記憶装置で構成されてもよいし、別体であってもよい。
ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３及び記憶部１４は、制御部１０を構成する。制御部１０は、ＣＰＵ１１がプログラムを実行することにより、端末装置１の各種機能を実現する。
【００１９】
通信部２１は、通信回線３を介して外部の装置との間でデータを送受信する。通信回線３は、ＬＡＮ等の限られたエリア内のネットワーク、及び、インターネット等の広域ネットワークのいずれであってもよい。また、通信回線３は、有線通信回線及び無線通信回線のいずれを含んでもよく、公衆通信回線のような広域通信回線を含んでもよい。本実施形態の端末装置１は、通信回線３を介してサーバー２（外部装置）との間でデータを送受信可能である。サーバー２は、端末装置１とデータを送受信し、端末装置１が送信したデータを受信して記憶する機能を備える。また、本実施形態の端末装置１は、外部の装置である印刷装置４との間でデータを送受信可能である。印刷装置４は、サーバー２とともに、通信回線３を介して端末装置１に接続されていてもよいし、端末装置１に直接接続されていてもよい。印刷装置４は、端末装置１の指示により印刷物を発行し（印刷を実行し）、また、その応答やステータス情報を端末装置１に通知する。
【００２０】
端末装置１は、例えば液晶パネルや有機ＥＬパネルで構成される表示画面（図示略）を備え、表示画面には入力デバイスとしてのタッチパネル（図示略）が配置されている。端末装置１は、タッチパネルや物理キーの操作による入力を検出する入力部２２と、表示画面に画像等を表示する表示部２３とを備える。入力部２２は、入力を検出した場合に、検出した入力内容を示すデータを制御部１０に出力する。表示部２３は、制御部１０の制御に従って表示画面を駆動し、処理対象のデータや処理結果に係る画像、文字を表示させる。
また、端末装置１は、マイク（図示略）により音声の入力を受け付ける音声入力部２４、及び、スピーカー（図示略）により音声を出力する音声出力部２５を備える。
【００２１】
図２は、端末装置１のソフトウェア構成を示す図である。端末装置１は、基本制御プログラムであるオペレーティングシステム（ＯＳ）１０１を有し、このＯＳ１０１上で各種のアプリケーションを動作させる。ＯＳ１０１の具体的な例としては、Ｗｉｎｄｏｗｓ（登録商標）、ｉＯＳ（登録商標）、Ａｎｄｒｏｉｄ（登録商標）、Ｆｉｒｅｆｏｘ（登録商標）ＯＳ等が挙げられる。
【００２２】
端末装置１には複数のアプリケーションがインストールされ、端末装置１は各アプリケーションを独立して実行できる。端末装置１は、アプリケーションをインストールする際に、制御部１０の機能によりアプリケーションに対して当該アプリケーション用の記憶領域（特定の記憶領域）を割り当てる。この記憶領域の実体は記憶部１４の記憶領域の一部である。この記憶領域はサンドボックス（Ｓａｎｄｂｏｘ）と呼ばれ、１つのアプリケーションに対して１つのサンドボックスが割り当てられる。本実施形態では２つのアプリケーションにそれぞれ対応する２つのサンドボックス１１０、１２０を例示する。
【００２３】
サンドボックス１１０には第１のアプリケーション（Ａｐｐ１）を構成するプログラムやデータを格納するフォルダー１１１が配置される。フォルダー１１１は、アプリケーションのプログラムであるアプリケーション本体１１２、及び、各種のデータフォルダー１１３、１１４、１１５を含む。例えば、データフォルダー１１３は、Ａｐｐ１の実行により生成または編集される文書を格納するドキュメントフォルダーであり、データフォルダー１１４は、Ａｐｐ１の実行時に参照されるデータ等を格納するライブラリーフォルダーである。また、データフォルダー１１５は、一時ファイルを格納する一時（ｔｅｍｐ）フォルダーである。
【００２４】
また、サンドボックス１２０には第２のアプリケーション（Ａｐｐ２）を構成するプログラムやデータを格納するフォルダー１２１が配置される。フォルダー１２１は、アプリケーションのプログラムであるアプリケーション本体１２２、及び、各種のデータフォルダー１２３、１２４、１２５を含む。データフォルダー１２３、１２４、１２５は、例えば、データフォルダー１１３、１１４、１１５と同様のドキュメントフォルダー、ライブラリーフォルダー、ｔｅｍｐフォルダーである。
【００２５】
制御部１０は、Ａｐｐ１を実行する場合、ＯＳ１０１によりサンドボックス１１０のアプリケーション本体１１２を呼び出す。ここで、アプリケーション本体１１２が実行されると、必要に応じて、サンドボックス１１０のデータフォルダー１１３、１１４、１１５に対しデータの参照、編集、及び保存が行われる。Ａｐｐ２を実行する場合も同様に、サンドボックス１２０のアプリケーション本体１２２が呼び出され、アプリケーション本体１２２がデータフォルダー１２３、１２４、１２５に対してアクセスする。
【００２６】
図３は、端末装置１のソフトウェアの機能を示す説明図である。
アプリケーション１１６は、上述したＡｐｐ１を制御部１０が実行することにより実現される機能ブロックである。アプリケーション１１６は、アプリケーション自体の機能として、機能モジュール１１７及びログ生成部１１８を有し、設定ファイル１１９を利用して動作する。設定ファイル１１９は、図２に示したデータフォルダー１１３、１１４、１１５のいずれかに記憶されるファイルである。また、アプリケーション１２６は、上述したＡｐｐ２を制御部１０が実行することにより実現される機能ブロックである。アプリケーション１２６は、アプリケーション自体の機能として、機能モジュール１２７を有し、設定ファイル１２８を利用して動作する。設定ファイル１２８は、図２に示したデータフォルダー１２３、１２４、１２５のいずれかに記憶されるファイルである。
【００２７】
端末装置１がアプリケーション１１６を実行するときには、機能モジュール１１７が端末装置１のリソース１０２を使用する。リソース１０２は、端末装置１が有するリソースであるが、特定のハードウェアのみを指すものではなく、ＯＳ１０１がハードウェアを制御する機能であってもよい。例えば、入力部２２により入力を受け付ける機能、表示部２３により表示を行う機能、音声入力部２４により音声を取得する機能、音声出力部２５により音声を出力する機能等がリソース１０２として挙げられる。また、例えば、通信部２１を利用して公衆回線網に電話を発信する機能、通信部２１を利用して外部のウェブサーバー（図示略）からウェブページをダウンロードする機能、通信部２１を利用して印刷装置４と通信して印刷を実行させる機能等もリソース１０２となる。
【００２８】
アプリケーション１１６は、上述したＯＳ１０１上で動作するアプリケーションであり、その機能は、例えば、文書編集、ブラウザー、電話発信、印刷等である。ユーザーの操作によりＯＳ１０１がアプリケーション１１６を起動すると、アプリケーション１１６はリソース１０２にアクセスして所定の機能を実行する。アプリケーション１１６は、アプリケーション１１６に割り当てられた専用の領域であるサンドボックス１１０で動作し、他のアプリケーションに割り当てられたサンドボックス１２０に影響を与えない。すなわち、アプリケーション１１６は、サンドボックス１１０を実行領域とし、サンドボックス１１０に格納された設定ファイル１１９に従って動作し、サンドボックス１１０に格納されたデータを処理する。アプリケーション１１６がリソース１０２を利用するときにはアプリケーション１１６がＯＳ１０１（図２）にリクエストを行い、このリクエストによりＯＳ１０１のＡＰＩが動作する。このように、アプリケーション１１６は保護された領域であるサンドボックス１１０で動作し、ＯＳ１０１や他のサンドボックス１２０をアプリケーション１１６から保護する構成となっている。
【００２９】
例えば、アプリケーション１１６が印刷装置４により印刷を実行させる機能を有する場合、アプリケーション１１６は、リソース１０２の通信モジュールを利用して、印刷装置４との間で通信を実行する。アプリケーション１１６は、印刷装置４に対し、制御コマンドや設定データ等を含む各種のデータを、リソース１０２を利用して送信する。また、アプリケーション１１６は、印刷装置４が、印刷装置４の動作状態や、アプリケーション１１６が送信したコマンドに対する応答を含むステータスを送信した場合に、このステータスを受信する。
【００３０】
アプリケーション１１６が、他のアプリケーション（例えば、Ａｐｐ２）のサンドボックス１２０に格納されたデータ、或いは、他のアプリケーションと共有するデータを参照する場合、ＯＳ１０１のファイルシステム１０３を介して対象のデータにアクセスする。この機能は、ＯＳ１０１がアプリケーション１１６に対し、対象のデータを参照する権限を与えた場合のみ可能である。
また、サンドボックス１２０に格納されたアプリケーション１２６は、アプリケーション１１６と同様に動作する。
【００３１】
ここで、アプリケーション１１６は、ログ生成部１１８を有する。ログ生成部１１８は、アプリケーション１１６に対応するサンドボックス１１０に設けられ、サンドボックス１１０のログを生成する機能を有する。
ログ生成部１１８は、サンドボックス１１０のログ情報を生成する機能を有する。
【００３２】
ログ生成部１１８が生成するログ情報は、サンドボックス１１０の全体に関するログ情報であり、具体的な例としては、サンドボックス１１０に格納されたファイルを複製したデータである。この場合、ログ生成部１１８は、図２に示したフォルダー１１１内の全てのファイル及びフォルダーをコピーして、ログ情報とする。ログ生成部１１８は、複数のファイル及びフォルダーのコピーを圧縮して１つのファイルに変換し、ログ情報としてもよい。或いは、ログ生成部１１８は、フォルダー１１１のうちアプリケーション本体１１２を除くファイル及びフォルダーをコピーしてログ情報としてもよいし、フォルダー１１１内のファイルのコピーと、ファイルが格納されていたフォルダーを示す識別情報とをログ情報としてもよい。これらの例において、少なくとも、アプリケーション１１６が実行時に参照する設定ファイル１１９のコピーがログ情報に含まれることが望ましい。また、一時フォルダーであるデータフォルダー１１５に格納されたファイルのコピーを含むことが好ましい。サンドボックス１１０の全体のログ情報としては、少なくとも、フォルダー１１１を除く全てのファイルのコピーがログ情報に含まれることが好ましい。ログ生成部１１８が生成するログ情報は、例えば、ｔｅｍｐフォルダーであるデータフォルダー１１５に格納される。
【００３３】
ログ生成部１１８が生成するログ情報は、ファイルのコピーではなく、ファイルの一覧であってもよい。この一覧は、例えば、サンドボックス１１０に格納された全てのファイルについて、ファイル名、ファイルが格納されていたフォルダー名、ファイルの作成日時、更新日時または最終アクセス日時、ファイルサイズ等の情報を含む。また、この一覧に、フォルダー名、フォルダーの作成日時、更新日時または最終アクセス日時、フォルダーのサイズ等、フォルダーの情報を含んでもよい。
【００３４】
ログ生成部１１８がサンドボックス１１０の全体に関するログを生成することで、アプリケーション１１６（アプリケーション本体１１２）の実行環境全体の状態を記録することができる。これにより、アプリケーション本体１１２の動作の不具合等が生じた場合の原因の解析等を、効率よく行うことができる。特に、ログ生成部１１８がログ情報に含まれるため、アプリケーション本体１１２の動作状態を詳細に解析するための情報が得られる。
【００３５】
ログ生成部１１８は、また、アプリケーション１１６の動作に関するログを取得して、動作ログとして保存する機能を有する。動作ログは、アプリケーション１１６がＯＳ１０１に対して行うリクエスト、及び、アプリケーション１１６にＯＳ１０１が返すレスポンスを含む。また、動作ログは、アプリケーション１１６に入出力されたデータに関する情報を含む。例えば、アプリケーション１１６が取得、参照、生成、更新したファイルに関し、ファイル名等を含む。動作ログは上述したサンドボックス１１０のログ情報に含まれてもよいし、ログ情報とは別のファイルであってもよい。
例えば、アプリケーション１１６が印刷装置４により印刷を実行させる機能を有する場合、ログ生成部１１８は、アプリケーション１１６が印刷装置４に送信した各種のデータ、及び、アプリケーション１１６が印刷装置４から受信したステータス等に関するログを生成する。このログは、サンドボックス１１０のログ情報に含まれてもよく、サンドボックス１１０のログ情報とは別のログ情報として、データフォルダー１１５に記憶されてもよい。
【００３６】
図４は、端末装置１の動作を示すフローチャートであり、詳細には、ログ生成部１１８の動作を示す。
ログ生成部１１８は、アプリケーション１１６の動作を検出すると（ステップＳ１１）、動作ログの取得を開始する（ステップＳ１２）。具体的には、アプリケーション１１６の入出力を検出して記録する処理を開始する。
ログ生成部１１８は、アプリケーション１１６の動作が終了するまで動作ログの取得を継続し（ステップＳ１３）、アプリケーション１１６の動作が終了したことを検出すると（ステップＳ１３；ＹＥＳ）、取得した動作ログを１つのファイルに記録する（ステップＳ１４）。ステップＳ１４で、ログ生成部１１８は、サンドボックス１１０の所定のフォルダー（例えば、データフォルダー１１３）に動作ログのファイルを格納し、これによりサンドボックス１１０内に動作ログが作成される（動作ログ作成）。
【００３７】
続いて、ログ生成部１１８は、サンドボックス１１０のログ情報を作成して、例えばデータフォルダー１１５に格納する（ステップＳ１５）。ステップＳ１５で作成するログ情報は上述した通り、サンドボックス１１０の全体の状態を示す情報である。さらに、ログ生成部１１８は、生成したログ情報を出力する（ステップＳ１６）。ステップＳ１６では、例えば、ログ情報を通信部２１によりサーバー２に送信することができる。また、端末装置１に、ＳＤ（登録商標）カードやＵＳＢメモリーデバイス等の外部記憶装置または外部記憶媒体（外部装置）が接続されている場合に、この外部記憶装置または外部記憶媒体にログ情報を出力してもよい。
【００３８】
以上説明したように、本発明を適用した端末装置１は、ＯＳ１０１、及び、ＯＳ１０１上で動作するアプリケーション１１６を実行する電子機器であり、ＯＳ１０１の機能によりアプリケーション１１６に割り当てられたサンドボックス１１０に、アプリケーション１１６を構成するプログラムであるアプリケーション本体１１２及びアプリケーション１１６で処理されるデータを格納する。端末装置１が備えるログ生成部１１８は、サンドボックス１１０の状態に関する情報を取得してログ情報を生成し、生成したログ情報をサンドボックス１１０に記憶する。このため、サンドボックス１１０に関するログを生成してサンドボックス１１０に記憶するので、アプリケーション１１６の動作だけでなくアプリケーション１１６の動作環境等についても情報を記録できる。このため、例えばアプリケーション１１６の動作に不具合が発生した場合の原因の解析等が容易になる。また、ログ情報をサンドボックス１１０に記憶するので、他のアプリケーション１２６の動作に影響を与えずに詳細な記録を保存できる。
【００３９】
また、端末装置１のログ生成部１１８は、特定の領域の全体に関するログ情報を生成するので、アプリケーション１１６の挙動及び動作環境について詳細な情報を保存できる。
また、ログ情報は、サンドボックス１１０のファイルを複製したデータ、又は、ファイルとファイルを格納するフォルダーを複製したデータを含むので、アプリケーションの動作環境の構成、及び、その状態について詳細な解析が可能となる。
また、ログ情報は、特定の領域内のファイルの一覧、又は、ファイルとファイルを格納するフォルダーの一覧を含むものであってもよい。この場合も、アプリケーションの動作環境の構成について解析が可能となり、ログ情報のデータ容量を抑えることができる。
また、ログ情報は、サンドボックス１１０に格納された設定ファイル１１９の内容を含むものであってもよく、この場合、アプリケーション１１６の挙動についてより詳細な情報を保存できる。
【００４０】
また、サンドボックス１１０に格納されたログ生成部１１８が、サンドボックス１１０の状態に関してログ情報を生成し、このログ情報をサンドボックス１１０に記憶させる。このため、例えば他のアプリケーション１２６に割り当てられたサンドボックス１２０を参照する必要が無い。このため、ＯＳ１０１が特定の領域の参照について制約を設けている場合であっても、この制約に制限されずにログ情報を生成できる。
例えば、端末装置１は、独立して動作可能なアプリケーション１１６、及びアプリケーション１２６を有し、アプリケーション１１６、１２６には異なるサンドボックス１１０、１２０が割り当てられる。この構成において、ログ生成部１１８は、アプリケーション１１６に割り当てられたサンドボックス１１０のログ情報を生成してサンドボックス１１０に記憶する。このため、サンドボックス１２０を参照することなく、サンドボックス１１０について詳細なログ情報を保存できる。
【００４１】
また、アプリケーション１１６が印刷装置４と通信して印刷を実行させる機能を有する場合、ログ生成部１１８は、印刷装置４との通信に関する情報を含むログ情報を生成して記憶する。このため、アプリケーション１１６について、印刷装置４との通信に関する情報を含むログ情報を記録できる。また、ログ生成部１１８は、アプリケーション１１６の動作環境等についても詳細な情報をログ情報として保存する。このため、アプリケーション１１６の印刷に関する動作について、ログ情報をもとに、動作環境を含めた詳細な解析を行うことが可能となる。
【００４２】
なお、上述した各実施形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。例えば、上述した実施形態では、端末装置１が通信機能を有する装置として説明したが、本発明はこれに限定されず、例えば通信機能を持たない電子機器であってアプリケーションを実行する機器に本発明を適用してもよい。また、アプリケーション１１６、１２６が実行する機能や端末装置１が備えるリソース１０２の具体的構成は特に制限されない。
【符号の説明】
【００４３】
１…端末装置（電子機器）、２…サーバー（外部装置）、１０…制御部、１１…ＣＰＵ、１２…ＲＯＭ、１３…ＲＡＭ、１４…記憶部、２１…通信部、１０２…リソース、１０３…ファイルシステム、１１０、１２０…サンドボックス（特定の領域）、１１２、１２２…アプリケーション本体、１１６…アプリケーション、１１７…機能モジュール、１１８…ログ生成部、１１９…設定ファイル（設定用ファイル）。
【図１】
2016001418.tif 000003
【図２】
2016001418.tif 000004
【図３】
2016001418.tif 000005
【図４】
2016001418.tif 000006