Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Oracle Functionsのオブザーバビリティ / Oracle Functions O...
Search
oracle4engineer
PRO
May 31, 2022
Technology
1.3k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Oracle Functionsのオブザーバビリティ / Oracle Functions Observability
oracle4engineer
PRO
May 31, 2022
More Decks by oracle4engineer
See All by oracle4engineer
OCI Oracle AI Database Services新機能アップデート(2026/06-2026/08)
oracle4engineer
PRO
0
110
OKE の進化 - Oracle Cloud Infrastructure Kubernetes Engine の現在地 -
oracle4engineer
PRO
0
150
【Oracle AI Spotlight ウェビナー】クラウド移行の成否を分けるデータ基盤の配置戦略 ― マルチクラウドやソブリンクラウドで広がるデータ基盤の選択肢
oracle4engineer
PRO
1
49
Oracle Cloud Infrastructure IaaS 新機能アップデート 2026/6 - 2026/8
oracle4engineer
PRO
0
150
Autonomous AI Databaseサービス・アップデート(FY27)/ adb-service-update-jp-fy27
oracle4engineer
PRO
0
140
【Oracle AI Spotlight ウェビナー】AWSか、Azureか、Google Cloudか。その議論にオラクルを含める意義。
oracle4engineer
PRO
2
250
Oracle AI Databaseデータベース・サービス: BaseDB/ExaDB-Dの可用性
oracle4engineer
PRO
2
1.2k
もうプロンプトは書かない!? ループエンジニアリング入門
oracle4engineer
PRO
2
500
[ OracleTechnologyNight#102]SQL性能改善の武器としてのパラレル実行詳細
oracle4engineer
PRO
1
270
Other Decks in Technology
See All in Technology
WAF 運用改善の承認サイクル/SRE_BizReach_MIXI_1
visional_engineering_and_design
2
430
HRC_Frontend_Conference_Fukuoka_2026.pdf
ts020
0
450
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
190
Redmine 7.0で私が開発した新機能の狙いと背景
vividtone
1
160
Amazon S3 Tablesに全部任せてみた結果——コンパクション/スナップショット管理は本当に手放せるか
shigeruoda
1
470
コーディングエージェントでM5Stack系の開発を少し試した時の話 / M5 Japan Tour 2026 Autumn 東京
you
PRO
0
160
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
1
520
SQL文一行も書けない人事がCortexもろもろを使って人事業務を楽にしてみる
ponponmikankan
1
220
Slack上でインフラをトラブルシュートする! Agentic Platform Engineeringの第一歩
teru0x1
2
760
OpenTelemetry eBPF Instrumentationの舞台裏 / Behind the Scenes of OpenTelemetry eBPF Instrumentation
ymotongpoo
3
1k
AI時代に顧客へ最速で価値を 届けるための試行錯誤 〜「AI × マネジメント」領域におけるmentoのケース〜
posterkeisuke
0
110
AI-DLCって実際どう? 〜聞きたいこと全部聞いてみる〜
news_it_enj
0
260
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
9
36k
Google's AI Overviews - The New Search
badams
0
1.6k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Visualization
eitanlees
152
17k
Odyssey Design
rkendrick25
PRO
2
800
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
500
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
From π to Pie charts
rasagy
0
360
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Building AI with AI
inesmontani
PRO
1
1.2k
Deep Space Network (abreviated)
tonyrice
0
300
Transcript
Oracle Functionsのオブザーバビリティ Subhead goes here on one line Name 日本オラクル株式会社
May, 2022
Copyright © 2022, Oracle and/or its affiliates 2 1. Oracle
Functions – Metrics 2. Oracle Functions – Logs 3. Oracle Functions – Traces Agenda
Oracle Cloud Observability and Management Platform Copyright © 2022, Oracle
and/or its affiliates 3 Logging Logging Analytics Application Performance Monitoring Database Management Operations Insights Service Connector Hub オンプレミス、クラウドのOracle DBの リソース監視、パフォーマンス分析 OSやDBのキャパシティプランニングや リソースの需要予測 Monitoring Events Notifications Streaming OS Management Functions コンピュート、ネットワークなど各OCIリソー スの状態を監視するメトリックを管理 メール、SMS、Slack等のアラート メッセージを発信 クラウド上のリソースの変化を捉え、検知 した内容に応じたアクションの実行 インフラストラクチャを必要としないサー バーレスなアプリケーション実行環境 大量のデータストリームを処理するフルマ ネージドな分散メッセージング基盤 OS上で稼働するアプリケーションのワーク ロードの管理やリソース監視 Observability & Management サービス Platform サービス 監査ログやネットワーク、ストレージ・ログ などのOCIサービスに関するログ管理 様々な種類のログを集約し、機械学習 を用いた高度な分析とビジュアライズ Loggingのログを別のサービスに 転送するサービス連携基盤 Javaアプリケーションやマイクロサービスの パフォーマンス分析 Logs Metrics Traces
Copyright © 2022, Oracle and/or its affiliates 4 Oracle Functions
– Metrics
• OCIの各サービスの性能や状態を表すメトリックを収集・監視 • コンピュート・インスタンスのCPU, メモリ, ネットワーク送受信 • ロードバランサーのインバウンドリクエスト, 帯域幅 •
ブロック・ボリュームのI/Oスループットなど • 事前定義済みのダッシュボードが提供され特別な設定は必要なし • メトリック・エクスプローラーによる詳細なメトリック分析 • ユーザー自身によるカスタム・メトリックの作成 • ヘルスチェックによるコンピュートのサービス・ポートを監視 • メトリックの保持期間は90日間 • メトリックに対してアラームを作成可能 • アラームはNotificationsサービスと連携する事で、メール、 Slack等による通知やFunctionsサービスを起動し、特定のア クションを実行するなど、対応を自動化することも可能 Monitoring Copyright © 2022, Oracle and/or its affiliates 5 CPU: 80 CPU: 90 CPU: 40 CPU: 50 Customer Applications, Services, Resources OCI Services METRICS ALARMS Notifications Monitoring
Oracle Functionsの実行をモニターし、以下のメトリックを自動的に収集 ディメンション: メトリック・データをフィルターしたりグルーピングするもの • applicationId: ファンクションを管理するアプリケーションのOCID • resourceId: ファンクションのOCID
• responsetype: ファンクションが呼び出されたときのレスポンス(Success, Error, Throttled) Oracle Functionsのメトリック Copyright © 2022, Oracle and/or its affiliates 6 メトリック ディメンション 概要 FunctionExecutionDuration applicationId, resourceId ファンクションの合計実行時間 [ms] FunctionInvocationCount applicationId, resourceId ファンクションの呼び出しの合計数 [count] FunctionResponseCount applicationId, resourceId, responseType ファンクション・レスポンスの合計数 [count]
収集したメトリックは、事前定義済みのダッシュボードとして提供 Function Metric Copyright © 2022, Oracle and/or its affiliates
7
Copyright © 2022, Oracle and/or its affiliates 8 Oracle Functions
– Logs
OCI内のログを有効化し、ログデータの簡易的な分析と連携管理を提供 以下の3種類のログに対応 監査ログ • デフォルトで収集されるOCIコンソールやAPIの操作ログ サービス・ログ • OCIネイティブなサービスから生成されるログ • ファンクション,
ロードバランサー, オブジェクト・ストレージ, VCN Flow Logs等 カスタム・ログ • Linux syslogやWindows イベント等のOSで管理されるログ 監査ログは最大365日、サービス/カスタムログは最大6カ月保持 オブジェクトストレージやLogging Analyticsをログデータを移動して、ログの 永続的な保管が可能 高度なログ分析やアラート、ビジュアライゼーションにはLogging analyticsと 連携して使用するのがもっとも効果的 Logging Copyright © 2021, Oracle and/or its affiliates 9 サービス・ログ Logging Object Storage VCN Flow Logs Load Balancer Auditing 監査・ログ カスタム・ログ
Functionsのログを有効化した場合、サービス・ログとしてOCI Loggingに出力される • アプリケーション(=ファンクションの管理単位)単位に出力される • 呼びだし時のログ(呼び出しに要した時間、失敗時のエラーコード)は自動的に収集される • 実行ログは、標準/標準エラー出力に出力したものが自動的に収集される OCI上で統合的な運用が可能 •
Service Connector Hubとの併用で、ログ出力を元にした操作が可能 OCI Functionsのログ Copyright © 2022, Oracle and/or its affiliates 10 console.log(‘debug log’); // Node.js System.err.println(“debug log”); // Java logステートメント アプリケーション単位に ログを有効化 標準/標準エラー出力に出力したログをLoggingの インターフェースを利用して参照
Oracle Functionsのログは、アプリケーション(=ファンクションの管理単位)単位に特定のログ・グループ (=ログの管理単位)に出力される ログの管理単位 Copyright © 2022, Oracle and/or its
affiliates 11 function-a function-b アプリケーション #1 ・・・ function-c function-d アプリケーション #2 ・・・ ・・・ Oracle Functions Functions OCI Logging Logging ログ・グループ #1 app1_invoke app2_invoke ・・・ ログ・グループ #2 app3_invoke app4_invoke ・・・ function-a ログ function-b ログ ・・・
出力される内容 Copyright © 2022, Oracle and/or its affiliates 12 {
"datetime": 1636351104724, "logContent": { "data": { "applicationId": "ocid1.fnapp.oc1.ap-tokyo-1.aaaaaaaaagi5fasv4qxkb3vootiz77ugdozpqnqvnxvruusa2pzioyb7pptq", "containerId": "01FKZ208K3000000000000024J", "functionId": "ocid1.fnfunc.oc1.ap-tokyo-1.aaaaaaaaei3thjhk56scniiex44zthk7osi22aay4cjomkumgtmtfd34y67a", "message": "INFO: tracingContext.functionName: fn-tracing", "opcRequestId": "/01FKZ1ZVFZ000000000000V7NJ/01FKZ1ZVFZ000000000000V7NK", "requestId": "/01FKZ1ZVFZ000000000000V7NJ/01FKZ1ZVFZ000000000000V7NK", "src": "STDERR" }, "id": "2cf9c27d-c11f-4d6a-ae84-ced28c7b5bae", "oracle": { "compartmentid": "ocid1.compartment.oc1..aaaaaaaanjtbllhqxcg67dq7em3vto2mvsbc6pbgk4pw6cx37afzk3tngmoa", "ingestedtime": "2021-11-08T05:58:36.340Z", "loggroupid": "ocid1.loggroup.oc1.ap-tokyo-1.amaaaaaassl65iqambbuvvbisri2xehhg274e4fjej2qod4v7raw32dr253a", "logid": "ocid1.log.oc1.ap-tokyo-1.amaaaaaassl65iqauyddmj3zzrfgbvoublwzxrvktwmdeutz2jjuqxcgasiq", "tenantid": "ocid1.tenancy.oc1..aaaaaaaa3mb7wrcy2ls3u3jsy2soq5ck3lc3q4mczitpdaymbuazc5tkguca" }, "source": "sandbox-app", "specversion": "1.0", "subject": "fn-tracing", "time": "2021-11-08T05:58:24.724Z", "type": "com.oraclecloud.functions.application.functioninvoke" } } 出力内容 アプリケーション名 Function名 同一Functionの複数コンテナの出力が混在する場合これで識別可能 標準出力(STDOUT) or 標準エラー出力(STDERR)
Copyright © 2022, Oracle and/or its affiliates 13 Oracle Functions
– Monitoring
アプリケーションのパフォーマンスを可視化し、問題の根本的原因を サーバーおよびユーザー・サイドから分析し解決をサポート • 分散トレーシング • トレースデータに基づいてアプリケーションのどの箇所が、または、 サービス間の連携でどのサービスがボトルネックなのかを可視化 • Open Tracing,
OpenTelemetry互換 • Javaアプリケーション実行環境の監視 • WebLogic, Tomcat, TomEE, Spring Boot • ブラウザ・エージェントにより、実際のユーザーのブラウザ操作を記 録しページ・ロードやパフォーマンスを監視 • アプリケーションやAPIのエンドポイントに対して定常的にリクエスト を実行し、死活監視およびパフォーマンス監視を実行 • 定義済みダッシュボードによる効率的なモニタリング Application Performance Monitoring(APM) Copyright © 2022, Oracle and/or its affiliates 14 Application Performance Monitoring アプリケーション 監視 エンドユーザー 性能監視
Application Performance Monitoring (APM) との統合によってFunctionのトレースが可能に • Function間の呼び出しや、他サービスの呼び出しに関連する情報をAPMでend-to-endに可視化 • 障害発生時の原因特定や性能上のボトルネックとなっている箇所の特定に貢献 Application
Performance Monitoring(APM)を用いたFunctionのトレース Copyright © 2022, Oracle and/or its affiliates 15 スパンの詳細情報 • 操作/処理名 • トレース開始からの経過時間 • スパンの実行時間 • トレースID • スパンID • etc.
• デフォルト・スパン • 関数呼び出し全体(リクエスト~レスポンス)の実行コンテキストの情報を提供する • ポリシーやFunctionの設定を実施後、関数コードに変更なしで自動的に提供される(※後述) • カスタム・スパン • 任意の範囲(スパン)の情報を提供する
• メソッドの処理開始~終了、メソッド内の特定処理の開始~終了 etc. • デフォルト・スパンよりも細かい単位で情報の取得が可能 • Zipkin等のクライアント・ライブラリを用いて、関数コード中に直接スパン定義を埋め込む デフォルト・スパン/カスタム・スパン Copyright © 2022, Oracle and/or its affiliates 16 デフォルト・スパン カスタム・スパン トレース: コンポーネント間を跨ぐイベントまたはトランザクションの因果連鎖の指標のことで、1つ以上のスパンで構成される スパン: トレース内の名前、開始時間や期間の情報を持つ操作・作業の論理単位のこと
関数呼び出し全体(リクエスト~レスポンスまで)の実行コンテキストの情報をOCI上の設定のみで自動的に提供 トレースの有効化 Copyright © 2022, Oracle and/or its affiliates 17
Functions Policies Allow service FaaS to use apm-domains in compartment <compartment-name> Allow group <group-name> to use apm-domains in comparetment <compartment-name> アプリケーション単位のトレース可否の設定 + ファンクション単位のトレース可否の設定 Application Performance Monitoring
Copyright © 2022, Oracle and/or its affiliates 18 Thank you
None