ログの設定を変更する
SkyWay Linux®︎ SDK では SDK のログレベルの変更や、出力されるログの取得、WebRTC 通信に関する詳細なログを確認できます。
SDKのログレベルを変更する
SDK から出力されるログレベルを変更するには、skyway::Context::Setup に渡すskyway::Context::SkyWayOptions の log_level を変更してください。
設定可能なログレベルと説明については、Linux SDK APIリファレンスを参照してください。
以下はログレベルを TRACE に設定した場合の例です。
skyway::Context::SkyWayOptions options{};
// SkyWayのログレベルの設定が行えます。
options.log_level = skyway::global::interface::Logger::kTrace;
skyway::Context::Setup(token, nullptr, options);アプリケーション開発時は、不具合の調査や SkyWay サポートとのやり取りを円滑に行うために、ログレベルを TRACE に設定することをおすすめします。
SDKのログを取得する
SDK から出力されるログを取得する場合は Logger にイベントリスナーを設定してください。
イベントリスナーは skyway::global::Logger::Listener をオーバーライドして実装してください。
イベントリスナーのインターフェースについては Linux SDK API リファレンスを参照してください。
以下は SDK のログを標準出力するリスナーの例です。
class LoggerListener : public skyway::global::Logger::Listener {
void OnLog(skyway::global::Logger::Level level, const std::string& text) override {
std::cout << "[" << level << "] " << text << std::endl;
}
};
// 実装したイベントリスナーを登録します。
auto logger_listener = std::make_shared<LoggerListener>();
skyway::global::Logger::RegisterListener(logger_listener);注意 各イベントリスナー内では直接、SkyWayの操作や処理をブロックするような処理は行わないでください。
そのような処理を行う場合は他のスレッドへ処理を移譲してください。
WebRTCに関するログを表示する
WebRTC 通信による詳細なログを出力する場合は、skyway::Context::SkyWayOptions の enable_webrtc_log を true に設定してください。
skyway::Context::SkyWayOptions options{};
// WebRTCのログ出力を有効にします。
options.enable_webrtc_log = true;
skyway::Context::Setup(token, nullptr, options);商標
Linux®︎は、米国およびその他の国における Linus Torvalds の登録商標です。