ページの先頭行へ戻る
Interstage Mobile Application Server V1.2.0 アプリケーション開発ガイド
FUJITSU Software

4.7.2 ログ出力と送信

以下にログ出力と送信をおこなう実施例を示します。

使用例

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"];
    }
}
Windows
ログ出力の例
IMAPSLogger m_logger = new IMAPSLogger();
m_logger.info("abcde");
m_logger.warn("あいうえお");
m_logger.error("abcde");
m_logger.debug("あいうえお");
ログ送信の例
public async Task sendFunc()
{
    string url = "https://サーバアドレス:ポート";
    string userId = "user1";
    string passwd = "pass11";

    try
    {
        // 認証処理
        LoginManager loginManager = new LoginManager();
        await loginManager.loginOnline(url, userId, passwd);
        // ログ送信処理
        IMAPSLogger m_logger = new IMAPSLogger();
        await m_logger.send(userId);
    }
    catch(Exception e)
    {
        // 例外処理
    }
}

注意

  • ログ送信先は、クライアント設定ファイルのimapsServerAddressで設定します。詳細は、付録F クライアント設定ファイルを参照してください。
  • ログAPIのsendメソッドを使用するには、以下のどちらかの認証情報の設定が必要です。

    (1)loginOnlineによる認証設定

    IMAPSエージェントと同様の認証方法です。ネイティブアプリケーションで利用するには、認証機能のloginOnlineメソッドやloginAutoメソッドなどで認証情報を設定してからsendメソッドを実行してください。

    (2)setManageInfoによる認証設定

    ユーザー情報を持たないアプリケーションでsendメソッドを実行する場合の認証方法です。あらかじめIMAPSサーバの管理コマンドでアプリケーション管理者を作成し、認証機能のsetManageInfoメソッドで管理者情報を設定してからsendメソッドを実行してください。アプリケーション管理者の作成方法は、"運用ガイド""コマンドリファレンス"を参照してください。