以下にログ出力と送信をおこなう実施例を示します。
実施例: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メソッドを実行してください。アプリケーション管理者の作成方法は、「運用ガイド」の「コマンドリファレンス」を参照してください。