この記事はOpenTelemetry Advent Calendarの6日目の記事です。 qiita.com 先日リリースされた .NET 7ではObservabilityへの投資がリリースブログに項目にあります。 devblogs.microsoft.com .NETにおけるOpenTelemetry対応は、.NET本体ではなくOpenTelemetry…
.NET 7になって .NET SDKだけでコンテナのビルドができるようになりました。 devblogs.microsoft.com このブログの最初にある通り、Microsoft.NET.Build.Containers というライブラリを追加すると利用できる機能ですが、(temporary)とあるのでそのうち不要に…
自分の勉強がてらまとめています。公式ブログを日本語で、すぐ目を通せることを目的にしています。この記事では.NET 7のテーマについてまとめています。 devblogs.microsoft.com .NET 7の新機能 シナリオ ユニファイド 1つの基本ライブラリ .NET 7をターゲッ…
複数サービス間での分散トレースは、必要な情報をサービス間で伝搬するContext Propagationによって実現されています。 opentelemetry.io HTTPでサービスを呼び出している場合、HTTPヘッダーを利用して伝搬させることがほとんどで、最近になってW3C Trace Co…
"\ufeff" はかの有名なByte Order Mark(BOM)です。 現状のdocker composeでは.envファイルなどにBOMがあると正しく処理ができずエラーになるようです。 github.com Visual Studio使わない場合でも起こりえると思いますが、Visual Studioを使った docker co…
今回、インサイドWindows第7版(下)を山内さんより献本いただきました。全部読了する前に、最も興味を惹かれた第10章「管理、診断、トレース」を読んで、書評を掲載します。なお、ご自身のブログにて目次が公開されています。 yamanxworld.blogspot.com この…
ここでいちどおさらいです。 OpenTelemetry .NETの現在地 GitHubのページで確認できる通り、Logs、Metrics、Tracesの3要素ともStableになりました。 github.com が、注意書きにある通り、ILoggerなどのログフレームワークから出力されたログを取り込む OpenT…
前回の投稿から時間が空きましたが、今回は今までとは違う方法での計装を試してみます。 今までの方法は、ソースコードの修正を前提とするものでした。トレース、ログ、メトリクスの1つ1つを詳細に計測するコードは必要なく、例えばASP.NET Coreに対応した計…
今まで登壇資料などはSlideShareに公開していたのですが、徐々にドクセルに移しています。 www.docswell.com 一時期、docs.com を利用したこともあったのですが、サービス終了したこともありSlideShareを使い続けていました。が、買収により所有企業がころこ…
前回はスパンに情報を追加しました。 tech.tanaka733.net 次にトレースをさらにスパンで区切ってどの処理に時間がかかっているか計測することにします。スパンは作業の単位で区切ります。原理的には1メソッド1スパンで記録することもできますが、計測のオー…
今回は、第2回目で計装したコードを基に、計測したSpanに情報を追加してみます。 tech.tanaka733.net 以下のコードを出発点にします。 app.MapGet("/weatherforecast", (ILogger<Program> logger, HttpContext context) => { var forecast = Enumerable.Range(1, 5).S</program>…
所属は明らかにしていますが、個人登壇という立場で「Deep Dive Distributed Tracing」というセッションをしてきました。発表内容もW3C Trace ContextやOpenTelemetryなどを中心にしつつ、できるだけ特定のツールの考え方ではなく共通で考えられているものを…
OpenTelemetry .NET で計測していると、正しく動作しているか確認したいときがあります。OpenTelemetry .NETにはこのようなときのために、自己診断機能が用意されています。 opentelemetry-dotnet/README.md at main · open-telemetry/opentelemetry-dotnet …
C# Tokyoでの企画でOpenTelemetryの初心者向けハンズオンを行いました。 csharp-tokyo.connpass.com OpenTelemetry .NETについての発表資料はこちらです。 202202 open telemetry .net handson from Takayoshi Tanaka www.slideshare.net ハンズオン課題はこ…
今回からは実際にOpenTelemetry .NETを使って計測してみることにします。まずは、ASP.NET Core (.NET 6)を題材にします。 OpenTelemetryのドキュメントと重なる部分も多いのであわせて参照してみてください。 opentelemetry.io 最初の計装 まずは、計測対象…
先日、カオスエンジニアリングをマネージドサービスとして提供するAzure Chaos Studioが発表され、プレビューとして利用できるようになっています。 azure.microsoft.com docs.microsoft.com せっかくなので試してみようと思い、いろいろやった結果をまとめ…
OpenTelemetry .NETを使って.NETアプリケーションを計測する方法について複数回にわたって紹介してみたいと思います。まず .NET向けの話に行く前に、OpenTelemetryそのものについてかんたんにまとめてみます。 OpenTelemetryの誕生 アプリケーションのパフォ…
CKA: Certified Kubernetes AdministratorとCKAD: Certified Kubernetes Application Developerを同じ日に受験して合格しました。 CKA/CKAD(あとCKSも?)は、例えばAzureの資格試験(AZ-303: Microsoft Azure Architect Technologiesなど)と異なり、実際のk…
こちらのイベントでお話しした資料を公開します。 【オンライン】New Relicで.NETアプリケーションを計測する - connpass 202109_Observability-for-csharp-engineer from Takayoshi Tanaka www.slideshare.net リンク クラウドネイティブセキュリティジャパ…
年末にかけて有給を取っていたこともあり、なんとなくプログラミングから離れていたのですが、振り返りは大事ということで振り返っておきたいと思います。 New Relic でのお仕事 昨年4月に転職したので2年目に入ります。徐々に日本法人のお客様も増え、社員…
Azure CLIでログインはできていて他のコマンドはうまく動くのにaz aks createだけ次のようなエラーが出ることがあります。 Operation failed with status: 'Bad Request'. Details: The credentials in ServicePrincipalProfile were invalid. Please see ht…
年末にかけて有給を取っていたこともあり、なんとなくプログラミングから離れていたのですが、振り返りは大事ということで振り返っておきたいと思います。 New Relic でのお仕事 昨年4月に転職したので2年目に入ります。徐々に日本法人のお客様も増え、社員…
年末にかけて有給を取っていたこともあり、なんとなくプログラミングから離れていたのですが、振り返りは大事ということで振り返っておきたいと思います。 New Relic でのお仕事 昨年4月に転職したので2年目に入ります。徐々に日本法人のお客様も増え、社員…
11月の.NET Confでリリースが予定されているされた .NET 5 関連の新機能をできるだけまとめてみました。ASP.NET CoreとEF Coreは除いています。 リリースにあわせていくつか更新しています。 そしてそんな .NET 5に興味のある方はぜひこちらのイベントにご参…
とあるREST APIのエンドポイントが /values/xxx みたいなエンドポイントに対して次のような形式のJSONを返します(実際にはこの3倍くらい属性があり、listの中の配列も多数あります)。XXXで指定した名前の値のリストを取得するというイメージで、この名前のパ…
今回からは本選の解説をまとめていきます。 codeforces.com 今回は予選のA問題と同じくユニタリー操作を識別する問題A1~A7です。予選問題の解説まとめ記事はこちら。 tech.tanaka733.net
Warmupラウンドの最後、D1とD2の量子機械学習のまとめです。 Problem - D1 - Codeforces Problem - D2 - Codeforces
本日はC1 |01⟩ + |10⟩ + |11⟩状態の生成です。 https://codeforces.com/contest/1356/problem/C
前回のA1~A5 ユニタリーの識別に引き続き、今回はB1,B2の可逆計算(Reversible computing)のおさらいです。 可逆計算をWikipediaで見てみると次のように書いています。 可逆計算(かぎゃくけいさん、英: Reversible computing)とは、可逆な、すなわち計算…
1か月以上前ですが、Microsoft Q# Coding Contest がSummer 2020として今年も行われました。復習をまとめておきたいと思います。まずは、warmupのA問題、ユニタリーの識別です。公式の解説記事はこちらです。 codeforces.com A1からA5の問題は与えられたユニ…