BEACHSIDE BLOG

Azure とか C# 好きなエンジニアの個人メモ ( ・ㅂ・)و ̑̑

Azure

Azure Pipelines で Multi-stage pipelines の Yaml をテンプレート化する ( Web Apps / ASP.NET Core )

前回はシンプルに1ファイルで ASP.NET Core の Web アプリを Azure の Web Apps にデプロイする Multi-stage pipeline を作りましたが、今回は再利用できるようにテンプレートするという、自分用メモです。 それにしても、このブログ書きかけてから2週間ほっ…

Multi-stage pipelines で Azure Pipelines を構築する ( Web Apps 編 / Azure DevOps )

Azure DevOps の Azure Pipelines は、今までの作り方から新しくなり Multi-stage pipelines と呼ばれるものになりました(2019年5月の話ですが..)。 Release pipeline も Yaml できっちりかけるようになりました。以前の Builds と Releases のメニューが…

QnA Maker の Web API を Ptyhon + Azure Functions でアクセス

前回は ヨガのポーズとその説明のデータを準備しました。 blog.beachside.dev 続編の今回は、QnA Maker を使ってヨガのポーズを質問したらポーズの特性を答えてくれる Knowledge Base (KB、質問投げたら回答してくれるFAQチャットみたいなもの) をノーコーデ…

QnA Maker でヨガのポーズからその特徴を調べる( Python でスクレイピングしてデータ準備編 )

もし、ヨガのレクチャーを受けたとき、そのポーズがなんの効果があるか知りたいと思うだろうと妄想したので QnA Maker などを使って解決しようと思いました。 (ヨガのレクチャー受けてるときはポーズになんの効果あるかとか説明ありそうですけどね、まだ受…

Speech Service の Speech To Text で音声をコンソールに表示する ( Azure Cognitive Services )

Microsoft Inspire で HoloLends 使った翻訳デモがあったりして盛り上がりを感じたので久々に触ってみようと思いました。 今回は、話した音声を Speech to Text でテキスト化して表示するコンソールアプリを作ります。 プロジェクト作成と Nuget のインスト…

Azure DevOps と Teams でプルリクとかの通知の連携を設定する

Slack から Teams に移行しようとずーっと思って一年以上がたってしまい、会社のチームでようやく使い始めました。超今更感ですが Azure DevOps の通知を Teams で受けれるよう連携の設定をやります。 Azure DevOps の Dashboard または Kanban board の追加…

TensowFlow の学習モデルを C# で読み込む(コンソールアプリ編)

犬種の画像分類の学習モデルを C# のコンソールアプリに組み込みんで画像分類できるようにします。 Azure の Custom Vision で画像の分類器を秒殺で作成することで(盛りました、作成に数分くらいです)、TensorFlow の画像分類のモデル作成のターンでは、機…

Azure Functions V2 ドキュメントリンク(入門者 向け)

Azure Functions (C#) を仕事で使いたいなーと思っている入門者方向けに、(私個人的に最低限ここは把握しておいてほしいと思っている)公式ドキュメントのリンク集です。 慣れないと公式ドキュメントを見ても量も多くて迷子になるので、(個人的に)最初に…

Azure Functions V2 の Startup.cs で appsettings.json を読み込む(2019年5月バージョン)

前回書いた Azure Functions の DI の方法だと、ASP.NET Core ではよく使う appsettings.json の読み込みがデフォルトで設定されていません。 local.setting.json ローカルデバッグ用の環境変数の設定はできるけど、 で困るのは Array とか object に対応し…

Azure Functions V2 での DI ( Dependency Injection ) : 2019年5月編

気づけば Azure Functions V2 のC#で DI ( Dependency Injection )が正式にサポートされましたね。依存性の注入とか依存関係の注入とか、MSのドキュメントだと依存関係の挿入とかってやつです。 実装のざっくりな要点は以下だと思ってます。 Startup.cs で D…

ノーコーディング で QnA Maker のチャットボットを作る: 2019/04編 (Bot Framework v4 Template for QnA Maker)

2019年4月に Bot Framework v4 Template for QnA Maker が更新され、QnA Maker と Bot Service を使ったチャットボットをサクッと作れるようになりました。試してみます。 リリースされたばかりで多少の罠とか縄とかありますが、そのうち改善されるでしょう…

Azure Bot Service で作成した Echo Bot (SDK V4.3.2)のソースをローカルでデバッグしたら 500 エラー

最近(2019/4ごろ) Azure Bot Service でチャットボットを作成してソースをダウンロードし、デバッグしても動かないということがあったのでちょっと調べてみました。 このエラーの対処もまた色々な変更ですぐに対処方法が変わるでしょうけど、メモしておきま…

Bot Channel のコールドスタート対策( Azure Bot Service )

Azure Bot Service では、WebChat とか外からの接続は Bot Channel 経由でなります。 WebChatとかだとここが Cold Start するので、たまーにアクセスすると初回のみ遅くて残念(一昔前よりはだいぶ早くなったけど!)。 ならば定期的にヘルスチェックして Co…

Azure Cosmos DB の一意キー制約(Unique Key Constraints)

Cosmos DB の一意キー制約(Unique Key Constraints)について、実装方法やエラー時の挙動を調べたメモです。 いきなり余談ですが、 一昔前に Cosmos DB で Collection と呼ばれていたものは、Azure の Portal だとまだ "Collection" と表現されていますが、…

Azure Cosmos DB Emulator を使ってみた(2019年2月編)

ローカル環境だけで開発が進めれるよう Azure Cosmos DB Emulator があります。 接続文字列は固定なので、ASP.NET Core で使うなら appsettings.Development.json とかに直接接続文字列書いたりも許容範囲化と思いますし、便利に使えそうだと思っています。 …

Azure DevOps の Wiki で使える 絵文字 チートシートとマークダウンのシンタックスガイド

いつも探すのに数秒手間取るのがイラっとするので、リンクのメモです。 (手間取るならブックマークでもつけておけよ感ありますが....)

Azure DevOps : master ブランチだけは削除できないように権限設定

Azure DevOps の Repos で、 master は削除できない master ブランチ以外は削除できる(Pull Request の Complete の時とか) という権限設定をするときのメモです。 PR を merge するときにブランチ消したいので削除権限は必要だけど master だけは削除でき…

Azure Functions プロキシ のレスポンスのオーバーライド( responseOverrides )で Json を返す

Azure Functions Proxies の機能のひとつに、リクエストを backend の url に送信せず、定義しておいたレスポンスを直接返すことができます。backend が用意できてないけどクライアント側の都合でどうしても通信したいときにサクッと使えます。 公式ドキュメ…

Release Pipeline 作成時 Azure Subscription の 認証 エラー 時の解決方法 ( Azure DevOps )

Azure DevOps で Release のパイプラインを作成する際、サブスクリプションを選択して Authorize する必要がありますが、認証できないトラブルに遭遇している方をちょいちょい見かけます。 「error insufficient privileges to complete the operation」とい…

Azure DevOps の Tips : Overview に Readme.md または Wiki を表示させる

Azure DevOps の Overview の Summary に「About this project」という部分があります。「About this project」では Description を書くことができるほか、以下のどちらかを表示することができます。 指定したリポジトリーの直下にある Readme.md Wiki のト…

Azure DevOps の Build / Release パイプラインの バッジ

Build や Release のパイプラインにつきものなのは、バッジですね。この取得方法をメモしておきます。

Azure Function V2 (C#) で Run From Package の CICD と Azure DevOps (4/4)

Azure Functions V2 の Release pipeline の作成その2です。前回はローカルにデプロイしましたが、今回は Blob にデプロイするバージョンです。前回より実践的な方法となります。 ただ、2018年12月時点だと Azure DevOps で Azure Functions V2 の Run From …

Azure Function V2 (C#) で Run From Package の CICD と Azure DevOps (3/4)

今回は、Zip デプロイ・Run From Package の CI/CD パイプラインを作ります。具体的には、Azure DevOps 上で Build Pipelines と Release Pipelines を構築します。 以前の回で作成した Azure Functions V2 のプロジェクトを使ってやります。

Azure Function V2 (C#) で Run From Package の CICD と Azure DevOps (2/4)

今回は Azure Function Core Tools の CLI を使って Blob Storage へ Zip デプロイ、Run From Package する方法のメモです。前回作成したプロジェクトを使って進めていきます。

Azure Function V2 (C#) で Run From Package の CICD on Azure DevOps (1/4)

Azure Functions v2 の Zip デプロイと Run From Package についての整理です。 今回は、サンプルプロジェクトの作成、Visual Studio から Zip Deploy の実行方法と、Run From Package の基本的な動作についてのメモです。 Azure Function V2 (C#) で Run Fr…

Custom Translator をちょっとさわってみた

Microsoft Translator Text API とその一部である Custom Translator について、以前からある機能とConnect 2018前後でアップデート含め、ざっくりまとめるとこんな感じになりました。 Microsoft Translator Text API は Neural Machine Translation ベース…

Cognitive Services の更新情報まとめ 2018年後半編

Cognitive Services の更新情報まとめ 2018 の前半というか Build まで、5月までの更新まとめは以前に書きました。 beachside.hatenablog.com 6月はあまり更新がなかったので、7月以降を整理してみました。 今後こういうネタもかけたらなーと思いつつ、 Cogb…

Bot Framework V4 開発 Tips についてお話しさせて頂きました

Cogbot 勉強会 #18 にて以下の資料で登壇させて頂きました。 Bot Framework v4 開発 Tips 2018-11 from BEACHSIDE (Atsushi Yokohama) www.slideshare.net

Bot Builder V4 開発入門 : C# : 会話ログ を Blob Storage に保存

Bot Builder V4 での会話ロギングを、Nuget パッケージ: Microsoft.Bot.Builder.Azure でサクッと実装する方法のメモです。

SQL Database Managed Instance (MI) : CPU と メモリ の確認

TL;DR SQL Database Managed Instance ( MI ) の CPU やメモリの確認方法について、 Azure ポータルでサクッとみれるが、スケールアップ(して諸事情で失敗すると)確認不能になることがある SSMS のデータベースのプロパティから見ても正確に見れない可能性…