入門¶
このショートガイドではPSYGIG Mobility IoT SDKの使い方を説明します。アプリケーションの計測を始める前に、最新バージョンのSDKをダウンロードしてインストールする必要があります。
PSYGIG Mobility IoT SDKのダウンロード/インストールガイド
クイックスタート - psymon
の使用¶
ソースコードを修正しなくても、 psymon
スクリプトを使用してプログラムを実行することで、アプリケーションに計測およびクラッシュレポート機能を即座に追加できます。例:
psymon "/path/to/your/app --arg1 --arg2 --arg3"
psymon
のデフォルト設定では、最も一般的な計測機能を使用します。選択的計測を有効にするには、計測クラスから オプション を選択して計測の設定をします。
オプションリストは psymon-manページ を参考ください。
アドバンス設定 - libpsyiage
を使ってアプリケーションを構築¶
PSYGIG Mobility IoT SDK の豊富な機能は、 C/C++ SDK API Reference を介して活用できます。 APIにアクセスするには、 単一のヘッダーファイル
を含めて libpsyiage
共有ライブラリにリンクします。
基本例: システムリソースメトリックの収集¶
この例では、システムリソースメトリックの期間ポーリングを有効にし、データをJSONファイルに保存します。
基本例 ソースコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | #include <psyiage/psyiagesdk.h>
int main(int argc, char **argv)
{
psyiage_handle pah; // handle to psyiage instance
psyiage_sink_cfg sink; // output sink configuration
int rc;
const char* RESULTS_DIR = "results"; // directory to store the output JSON file
const char* RESULTS_BASE = "sys"; // base filename of the output JSON file
// Initialize instance
rc = psyiage_init(&pah); // Ignore return code for simplicity sake
// Add a file sink for logging metrics to JSON
sink.type = PSYIAGE_SINK_FILE;
sink.format = PSYIAGE_DATA_FORMAT_JSON;
sink.file.dir = RESULTS_DIR;
sink.file.basename = RESULTS_BASE;
rc = psyiage_add_sink(pah, &sink); // Ignore return code for simplicity sake
// Enable polling of system resources every 500ms
rc = psyiage_metric_enable_poll_system_resources(pah, 500);
// Let it run for 15 seconds
startts = time(NULL);
endts = startts + 15;
while (time(NULL) < endts)
{
millisleep(1000);
}
// We are done. Cleanup PSYIAGE instance.
rc = psyiage_cleanup(&pah);
return 0;
}
|
gcc
を使用した 基本例 の構築
基本例 を構築するには、libpsyiage.so共有オブジェクトとリンクする必要があります。
gcc basic-example.c -o basic-example -lpsyiage
libpsyiageのインストール場所によっては、SDKのヘッダーファイルとライブラリファイルの場所を指定する必要があります。 GCCで指定する場合、それぞれ -I と -L オプションを使用してください。
gcc -I/opt/psygig/psyiage/include basic-example.c -o basic-example -L/opt/psygig/psyiage/lib -lpsyiage
上記ではPSYGIG Mobility IoT SDKが /opt/psygig/psyiage にインストールされていたとしていします。
cmake
を使用した 基本例 の構築
PSYGIG Mobility IoT SDK を使用してプログラムを構築するためのより良い代替手段は、特に複数のプラットフォーム用に開発している場合は、 cmake
を使用することです。次のようなフォルダ構造を仮定します:
basic-example\
|- src\
| |- basic-example.c
|- CMakeLists.txt
CMakeLists.txt file
CMakeLists.txt ファイル
1 2 3 4 5 6 7 8 9 10 11 | cmake_minimum_required(VERSION 3.1)
project(basic-example)
# Add the source files to the binary
add_executable(basic-example src/basic-example.c)
# Add the psyiagesdk.h folder to include path
target_include_directories(basic-example PRIVATE /opt/psygig/psyiage/include)
# Link the libpsyiage.so folder to the binary
target_link_libraries(basic-example /opt/psygig/psyiage/lib/libpsyiage.so)
|
PSYGIG Mobility IoT SDKが /opt/psygig/psyiage にインストールされているとします
次の一連のコマンドは、ビルド用のディレクトリを作成し(ソースフォルダにビルドするのは避けましょう)、 cmake
を使用して 基本例 をビルドしてからプログラムを実行します。
mkdir build
cd build
cmake ..
make
./basic-example