1.21 jigowatts

Great Scott!

Azure Virtual Machines で Visual Studio 2015環境を構築する

概要

いつでもどこでもVisual Studioが使えたらいいのになぁ。
ということで、AzureのVirtual Machinesで開発環境を作っておくことにしました。

環境

Azure 開発者プログラム特典サブスクリプション

仮想マシン作成

ハブメニューの[Virtual Machines]を開き、ブレードの[追加]から選択画面へ。

今回は「Visual Studio Community 2015 Update 2 with Universal Windows Tools and Azure SDK 2.9 on Windows Server 2012 R2」を選択しました。

f:id:sh_yoshida:20160701103652p:plain

ちなみに、ここでWindows10とかVisual Studio Enterprise 2015を選ぶとMSDNサブスクリプションを要求されました。

f:id:sh_yoshida:20160701103639p:plain


"作成"ボタンを押下したら、いい感じに仮想マシンの設定を行い"OK"ボタンを押下します。

f:id:sh_yoshida:20160701104245p:plain

サイズはStandard A1にしましたが、もう少しスペックを上げておいた方がいいかも。使用頻度にもよりますが、開発者プログラム特典の月3000円分のクレジットの減り具合で調整ですね。

sh-yoshida.hatenablog.com


デプロイが始まるので少し待ちます。

仮想マシンへの接続

仮想マシンが立ち上がったら、ブレードの[接続]よりリモートデスクトップ接続します。

f:id:sh_yoshida:20160701105611p:plain

接続するときに証明書エラーがでますが、問題ないので"はい"を選択します。

f:id:sh_yoshida:20160701110129p:plain

Windows Server 2012 R2にログインできるとVisual Studioがインストールされています。
これでいつでもどこでもVisual Studio Community 2015の環境が手に入りました!ありがとうございます!

f:id:sh_yoshida:20160701110855p:plain

使わないときは仮想マシンをブレードより[停止]しておきましょう。仮想マシンが稼働状態のままだと課金されてしまうようです。

Macから仮想マシンへの接続

Macから接続しようとするときRemote Desktop Connection for Macからだと接続できません。

f:id:sh_yoshida:20160702040422p:plain

「接続先のコンピュータのIDを確認できません。」と怒られました!

f:id:sh_yoshida:20160702040432p:plain

App StoreからMicrosoft Remote Desktopを入手し接続しましょう。

f:id:sh_yoshida:20160702041051p:plain

アプリを起動し、[New]で設定をしたら[Start]で接続です。

f:id:sh_yoshida:20160702041956p:plain

設定はこんな感じでOKでした。

f:id:sh_yoshida:20160702041502p:plain

これでMacからでもAzure Virtual Machinesに接続してVisual Studioを使えるようになりました!

f:id:sh_yoshida:20160702043629p:plain

Visual Studio Application Insights と ライブストリームを試してみた

概要

こちらのde:codeセッションを見ていたところ、Application Insightsという機能が紹介されていました。
channel9.msdn.com

Visual Studio Application Insights は、実行中のアプリケーションを監視し、パフォーマンスの問題や例外の検出と診断、アプリの使用方法の把握に役立ちます。

https://azure.microsoft.com/ja-jp/documentation/articles/app-insights-asp-net/

まだプレビューなのですが、面白そうだったのでアプリケーションに組み込んでAzureのポータルでのライブストリームでの監視をするところまで試してみます!

環境

Visual Studio Community 2015 Update 2
ASP.NET MVC 5
Azure 開発者プログラム特典サブスクリプション

実装

新規プロジェクト作成時にも追加することができますが、今回は既存のプロジェクトに追加します。
Visual Studioでプロジェクトを右クリックし、コンテキストメニューから[Application Insights テレメトリの追加]を選択します。

f:id:sh_yoshida:20160615115638p:plain

アカウント情報とテレメトリの送信先を選択します。
新規でも作成できますが、既存のリソースに追加してみました。大きなアプリケーションの場合は他のコンポーネントと同じリソースグループに配置することがお勧めらしいです。

f:id:sh_yoshida:20160615115645p:plain

この状態でデバッグしても動くのですが、Application Insights Web SDKを最新の安定版に更新するようお勧めされるのでNuGetパッケージマネージャで[Microsoft.ApplicationInsights.Web]を最新プレビューに更新しました。

f:id:sh_yoshida:20160615115653p:plain

ローカル環境でデバッグ実行するとVisual Studioの診断ツールや、Application Insightsの検索ウィンドウでアプリケーションの状態を観測できます。先日作ったWeb APIの動作の詳細も確認できました!

f:id:sh_yoshida:20160615115726p:plain

また、プロジェクトを右クリックし、コンテキストメニューから[Application Insights]-[Open Application Insights Portal]を選択することでAzureのポータルが開きます。

f:id:sh_yoshida:20160615124752p:plain

ここでもアプリケーションの状態を監視することができ、さらにライブストリームではほぼリアルタイムで状態を観測できるようです。

f:id:sh_yoshida:20160615125037p:plain

試しに一人でリクエスト投げたり、エラー発生させてみたりしてみましたが、ほぼリアルタイムでした。

f:id:sh_yoshida:20160615120830g:plain

このライブストリーム機能はMicrosoft.ApplicationInsights.Webの2.1.0-beta2以降が必要です。上記の通り、デフォルトのバージョンが1.2.3だったため更新するまで使えませんでした。
あとこのWeb SDKは現段階では.NET Framework 4/4.5に依存するため、ASP.NET Coreプロジェクトではダメでした。

ふわーっと触って満足してGitHubにコミットしようと思ったのですが、.csprojファイルにサブスクリプションIDが記述されてますね。
f:id:sh_yoshida:20160615130836p:plain

サブスクリプション ID とは

Windows Azure をご利用頂く際に、お客様と日本マイクロソフト株式会社は、無償または有償のサブスクリプション契約 (無料評価版、従量課金プラン等) を結びます。お客様が締結したこのサブスクリプション契約を一意のものとして識別するために、マイクロソフトでは 32 桁の GUID を付与しています。この GUID がサブスクリプション ID です。

https://blogs.msdn.microsoft.com/dsazurejp/2013/12/06/id-id/

うーん、これは公開しないほうがいいかも?

Visual Studio Dev EssentialsでAzureを毎月3000円分使える!しかも、12ヶ月間!

概要

名前は聞いたことあったのですが、当時ふーん程度であまりよくわかってませんでしたがすごくないですかこれ。

Visual Studio Dev Essentialsは、開発者の皆さんに無料でツール、ソフトウェア、クラウド サービス、トレーニングを提供するプログラムです。
以前から発表してしたVisual Studio Dev Essentialsでの、開発/テスト向けのAzure無料枠が利用可能になりました。これによって、12か月にわたってAzure無料枠を毎月3,000円 (25ドル) 利用できます。

https://satonaoki.wordpress.com/2016/02/05/vs-dev-essentials-azure/

登録

それでは早速こちらに従い登録してみましょう。いっそげー!

VisualStudioのプロファイルから[特典を使用する]リンク押下。
f:id:sh_yoshida:20160603010453p:plain

Visual Studio Dev Essentialsの画面にてAzureの[Activate]を押下。
f:id:sh_yoshida:20160603010503p:plain

Microsoftアカウントでサインイン。
f:id:sh_yoshida:20160603010512p:plain

支払情報を確認し、契約のチェックボックスにチェックを入れ[購入]。

中の人が「明示的に「使用制限」を削除しない限りは、課金は決して発生しないので、ご安心ください。」と仰っているので何も心配いりませんね!

f:id:sh_yoshida:20160603010523p:plain



しばらく待つと…。



f:id:sh_yoshida:20160603010531p:plain


開発者プログラム特典サブスクリプションアクティブになりました。
以前は無料試用版サブスクリプションがダッシュボードにピン留めされてたので、入れ替え。
f:id:sh_yoshida:20160603010541p:plain


ソロモンよ、私は帰ってきた!


私の場合は特にテーマがなかったので、3000円で十分です。これで一年触ってから金額がかかるような事を試したいときに無料試用版サブスクリプションを登録すればよかった!

sh-yoshida.hatenablog.com
sh-yoshida.hatenablog.com