C SDKをインストールする:コードをコンパイルおよびリンクする

New Relicの C SDKでアプリケーションをモニターするには、使用する機能をインストゥルメントします。

  • ウェブトランザクション、トランザクションイベント、非ウェブトランザクション
  • セグメント(より詳細なレベルのタイミング)
  • 属性
  • エラー

次に、アプリケーションをC SDK静的ライブラリに対しコンパイルしリンクします。

エージェントをインストールするには、ランチャーを使用するか、以下の説明に従います。

C SDKをコードに追加する

C SDKをアプリケーションのコードライブラリにインストールするには、この手順に従います。

1. 要件を確認します。
  1. アプリケーションが、New RelicのC SDKに関する互換性と要件を満たしていることを確認します。
  2. New Relicライセンスキーを必ず用意しておきます。
2. 提供されたヘッダーファイルを含めます。
#include "libnewrelic.h"
3. ロギングを設定します。

手順に従い、C SDKとデーモン双方のロギングを設定します。例えば:

if (!newrelic_configure_log("./c_sdk.log", NEWRELIC_LOG_INFO)) {
    printf("Error configuring logging.\n");
    return -1;
  }
  
4. 意味のあるアプリケーション名を設定できるよう用意しておきます。

最初のアプリケーション設定で、意味のあるアプリケーション名を設定できるよう用意しておきます。例:

newrelic_app_config_t* config;
/* ... */
config = newrelic_create_app_config("Your Application Name", "LICENSE_KEY_HERE");

アプリケーションに対し;で分離した、最大3つまでの異なる名前を付けることができます。アプリケーションに複数の名前を付けることにより、アプリケーション全体またはサービス全体で複数のエージェントのメトリックスを集計できます。例:

config = newrelic_create_app_config("YOUR_APP_NAME;APP_GROUP_1;ALL_APPS", "LICENSE_KEY_HERE");

アプリケーションの設定が済んだら、新しいアプリケーションを作成してそのデーモンに接続できます。

newrelic_app_t* app;

/* ... */

if (!newrelic_init(NULL, 0)) {
  printf("Error connecting to daemon.\n");
  return -1;
}

/* Wait up to 10 seconds for the SDK to connect to the daemon */
app = newrelic_create_app(config, 10000);
newrelic_destroy_app_config(&config);
5. コードをインストゥルメントします。

コードをインストゥルメントするには、GitHubにあるC SDKのに関するドキュメントに記載されたプログラムの例を参照します。ソースコードと機能に関する詳細については、GitHubにあるlibnewrelic.hを対象とする C SDKのソースに関するドキュメントを参照してください。

6. アプリケーションをコンパイルおよびリンクします。

C SDKのlibnewrelic.aは静的ライブラリで、すでにlibpcrelibpthreadのライブラリとリンクされています。このリンクのステップでシンボルコリジョンを回避するため、必ずこれらのライブラリの各々に対してリンクするようにします。

さらに、APMのError analyticsページにあるエラートレースをフルに活用するため、GNUの-rdynamicリンカーフラグを使ってアプリケーションをリンクします。これにより、C SDKの newrelic_notice_error API 呼び出しを使用して記録されるトランザクションのエラーに関し、スタックトレースでより意味のある情報を表示できるようになります。

例えば:

gcc -o test_app test_app.c -L. -lnewrelic -lpcre -lm -pthread -rdynamic
7. デーモンを開始しログをチェックします。
  1. C SDKのデーモンを開始します。例えば:

    ./newrelic-daemon -f -logfile newrelic-daemon.log -loglevel debug
  2. c_sdk.lognewrelic-daemon.logファイルで出力をチェックします。

C SDKのアーキテクチャでは、デーモンはインストゥルメントされるアプリケーションを呼び出すに、最初に呼び出す必要があります。

Cデーモンで利用可能なすべてのオプションを参照するには:コマンドラインに、以下をタイプします:

./newrelic-daemon --help

詳細については、C SDK GUIDE.mdを参照してください。

New Relicでアプリケーションのパフォーマンスを表示する

APMでアプリケーションのパフォーマンスを表示するには:

  1. アプリケーションのトラフィックを生成し、アプリケーションがNew Relicにデータを送信するまで数分間待ちます。
  2. APM UIでアプリケーションのデータを調査します。

数分以内にデータが表示されない場合は、c_sdk.lognewrelic-daemon.logファイルにエラーがないか確認します。それでも問題が解決されない場合は、トラブルシューティングのヒントに従います。

その他のヘルプ

さらに支援が必要な場合は、これらのサポートと学習リソースを確認してください: