以下にログ出力と送信をおこなう実施例を示します。
実施例:Android
ログ出力の例
IMAPSLogger m_logger = new IMAPSLogger(getApplicationContext()); m_logger.i("abcde"); m_logger.w("あいうえお"); m_logger.e("abcde"); m_logger.d("あいうえお");
ログ送信の例
private void sendFunc(Context context) { String url = "https://サーバアドレス:ポート"; String userId = "user1"; String passwd = "pass11"; new SendLogTask(context, url, userId, passwd).execute(); } class SendLogTask extends AsyncTask<String, Integer, String> { LoginManager mLoginManager = null; String mLoginURL = null; String mUserId = null; String mPasswd = null; IMAPSLogger mLogger = null; public SendLogTask(Context context, String loginURL, String userId, String passwd) { mLoginManager = new LoginManager(context); mLoginURL = loginURL; mUserId = userId; mPasswd = passwd; mLogger = new IMAPSLogger(context); : } protected void doInBackground(String... params) { try{ // 認証処理 mLoginManager.loginOnline(mLoginURL, mUserId, mPasswd); // ログ送信処理 mLogger.send(mUserId); }catch(Exception e){ // 例外処理 } } }
実施例:iOS
ログ出力の例
[IMALogger i:@"abcde"]; [IMALogger w:@"あいうえお"]; [IMALogger e:@"abcde"]; [IMALogger d:@"あいうえお"];
ログ送信の例
#import <IMAPSCore/IMALoginManager.h> #import <IMAPSCore/IMALogger.h> - (void) sendFunc { NSString *url = @"https://サーバアドレス:ポート"; NSString *userId = @"user1"; NSString *passwd = @"pass11"; // 認証処理 IMALoginManager *loginManager = [[IMALoginManager alloc] init:self]; [loginManager loginOnline:url userId:userId passwd:passwd]; } - (void) didLoginFinished:(NSError *)anError { if (anError == nil) { // ログ送信処理 [IMALogger send:@"user1"]; } }
注意
ログ送信先は、クライアント設定ファイルのimapsServerAddressにて設定します。詳細は、「付録F クライアント設定ファイル」を参照してください。
ログAPIのsendメソッドを使用するには、以下のどちらかの認証情報の設定が必要です。
(1)loginOnlineによる認証設定
IMAPSエージェントと同様の認証方法です。ネイティブアプリケーションで利用するには、認証機能のloginOnlinメソッドやloginAutoメソッドなどで認証情報を設定してからsendメソッドを実行してください。
(2)setManageInfoによる認証設定
ユーザー情報を持たないアプリケーションでsendメソッドを実行する場合の認証方法です。あらかじめIMAPSサーバの管理コマンドでアプリケーション管理者を作成し、認証機能のsetManageInfoメソッドで管理者情報を設定してからsendメソッドを実行してください。アプリケーション管理者の作成方法は、「運用ガイド」の「コマンドリファレンス」を参照してください。