BEACHSIDE BLOG

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

Azure

Durable Functions の状態管理と起動の基本 ( Azure Functions / C# )

Durable Functions を使うと、基本的に Azure の Storage で状態が管理されますが、久ぶりに使ったときに基本的な内容が改めて全く記憶がなかったのでメモしました。 状態管理 Durable Functions は、Azure Storage の Blob/Queue/Table で状態の管理が行わ…

Durable Functions: Human interaction pattern ( 人による操作 pattern )

Azure Functions の拡張機能である Durable Functions にはいくつかの実装パターンがありますが、ここでは Human interaction pattern を取り上げます。 今年の1月頃に書きかけてから、書くほどのことでもないなーと放置してたブログを更新しました...あの頃…

Azure のコストが一定額に達したら Slack とか Teams に通知する

Azure ではいくつかのコスト管理と通知に関する設定があります。 制限の手段として、何らかの特典でクレジットカードを登録したけど無料の範囲でしか使わない場合は、Azure Portal ではなく、アカウントポータル: https://account.azure.com/Subscriptions/…

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

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

Multi-stage YAML pipelines で WebApps の Pipeline を構築する ( Azure DevOps )

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

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

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

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 に対応し…

ノーコーディング で 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 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 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 の基本的な動作についてのメモです。

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

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

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 のデータベースのプロパティから見ても正確に見れない可能性…

Bot Builder V4 (4.0.1-preview) 開発入門 : C# : State の保持

2019-10追記: 2018年9月末に GA したバージョン V4.0.7 で、破壊的変更が多かったためこのバージョンと互換の無い部分があります。バージョンにご注意くださいね。 State は、外見だけなら V3 からあまり変更はないですが...さらっと整理しておきます♪ 手順…

Bot Builder V4 (4.0.1-preview) 開発入門 : C# : Azure へ デプロイ

2019-10追記: 2018年9月末に GA したバージョン V4.0.7 で、破壊的変更が多かったためこのバージョンと互換の無い部分があります。バージョンにご注意くださいね。 Bot Builder V4 で開発した Bot を Azure にデプローイして動かそうってお話です。前回から…

Azure Functions に IP アドレス 制限 をかける (2018/03)

以前、Functions で IPアドレスの制限かけれるようにしてって Feedback したのですが、ステータスが Completed にupdateってメールが来てました♪ 自身の Feedback を対応して頂けたので、設定方法 -2018/03版を紹介します。

Azure Functions の バインディング - Binder 編

Azure Functions では、関数の出力するデータをBlob や Queue に投げる処理を簡単にプログラムで書くことができます。 実装方法として、 宣言型のバインディング( declarative binding ) 命令型のバインディング( imperative binding ) があります。 今…

Azure Functions - Queue トリガーの キュー の 接続文字列

Azure Functions の Queue Trigger で、キューの ConnectionString のメモです。 たまーに新規に Queue Trigger 作るとき、後述する 余談 が気になって試して時間を浪費している気がしたので..メモっておきました。 環境 Visual Studion 2017 で C# ( C# scr…

Azure Bot Service を Channel に接続( MS Teams 編)

前回 Question And Answer テンプレートで作った Azure Bot Serviceを、Microsoft Teams の チャンネル ( Channel ) に接続してみましょう。 Azure Bot Service で Teams のチャンネルを追加して、 Microsoft App ID で連携して接続するって方法です。

QnA Maker と Azure Bot Service を連携(して QnA Makerの閾値を変更)その2

ここでは、Azure Bot Service を作成し、前回作成した QnA Maker と連携してみます。 Bot Service を QnA のテンプレートで作成した際、回答の精度を示すスコアが特定の 閾値 より低い場合、回答を返さない(正確には「No good match in FAQ.」と返します)…

QnA Maker と Azure Bot Service を連携(して QnA Makerの閾値を変更)その1

QnA Maker の作成と Bot Service との連携、Bot回答時の閾値の変更についての手順メモです。 登壇資料を作ってる際、話す時間が全然足りないことに気づき、話しきれないのでブログに...。 Overview 1. QnA Maker の作成(今回) 2. QnA Maker に REST でアク…