本文章是由機器翻譯。

Visual Studio 2013

運用 Application Insights 的新一代開發

Charles Sterling

過去幾年軟體交付的速度急劇增加。開發商已經從瀑布到敏捷到今天的連續釋放節奏。在這樣做的過程中,需要加強了更好、 更快和更直接的回饋。回應能力是遊戲的名稱。決策者需要提供綜合的分析,並作出及時的資料立即可供整個團隊的工具。

新的 Microsoft 應用程式見解,宣佈在Visual Studio2013年推出,圍繞回答的關鍵問題高性能交付團隊需要設計一套服務:我們的應用程式是否可用嗎?完成呢?我們提供的功能我們的使用者想要?

應用程式的見解不是限於操作。要消除交接並加快整個團隊資訊的流動,它與開發人員工具集成和操作已經使用 — —Visual Studio和Visual Studio連線。這樣就可以輕鬆為所有團隊成員以獲得他們需要的資訊。

應用程式的見解設計為使用內置 Microsoft.NET 框架、JAVA、 Windows Azure 服務、 Web 網站、 服務 Windows 應用商店的應用程式和 Windows Phone 8 的應用程式。完整的端到端監控,您可以 360 度的真實的您的應用程式,不只是小塊孤立的資料。

入門應用的見解

入門應用的見解是簡單的。要添加到 Web、 Windows Phone 或 Windows 應用商店的應用程式中應用的見解遙測,下載應用程式的見解工具為Visual Studio擴展,你會發現在Visual Studio畫廊 (aka.ms/aivsix)。未來版本的Visual Studio不會需要此額外步驟。

Visual Studio2013年中的新專案,選擇添加到專案的應用程式見解當你創建一個新的專案 (見圖 1)。


圖 1 添加新的Visual Studio2013年專案中應用的見解

若要使用現有的應用程式中應用的見解,按右鍵該專案,並選擇添加到專案的應用程式的見解遙測 (見圖 2)。


圖 2 用滑鼠右鍵按一下要添加到現有專案中應用的見解

添加應用程式的見解之後, 您的專案會有三個新節點與可用性監控、 效能監控和使用方式分析資料的快捷方式Visual Studio線上 (見圖 3)。


圖 3 新節點將顯示為已啟用專案

實施使用方式監測

一旦您已經添加到一個新的或現有的專案中應用的見解,使用監視對 Web、 Windows 存儲區和 Windows Phone 應用程式會自動啟用。對於老年人和非-­Visual Studio的 Web 應用程式,您可以通過將一個 JavaScript 的塊插入到您的應用程式添加此相同的功能。您可以通過按一下添加應用程式到此 JavaScript 塊 (見圖 4) 或去控制台,選擇獲取配置金鑰和下載。


圖 4 選擇添加將 JavaScript 塊添加到較舊的應用程式的應用程式

實施效能監控

儘管名字,性能監控給你一噸的只是效能資料以外的資訊。它也會通知你的例外情況、 呼叫堆疊資訊、 依賴項資訊、 物件分配和甚至資訊下­說謊的基礎設施。Microsoft 監測代理 (MMA) 還會自動收集 IntelliTrace 日誌異常和在您的代碼中調用速度緩慢。在大多數情況下,您可以啟動效能監控通過簡單地安裝 MMA,你會發現在 aka.ms/aimma

MMA 安裝時,它將預設為監測您的機器上的所有 Web 應用程式。這是為發展框,應該很好,但可能不是許多 Web 應用程式的生產伺服器的理想選擇。MMA 應該不會引起任何超過 5%的性能退化同時監控您的應用程式。

要在您以後添加的應用程式上啟用 MMA,您可以輕鬆地手動啟動監測通過 Windows PowerShell 命令:

Start-WebApplicationMonitoring -name "www.microsoft.com/games" -mode Monitor -outputchannel cloud

在將來的 MMA 和Visual Studio版本中,您不需要採取這一步驟。

您也可以啟動監視對JAVA和 Windows Azure 應用程式的性能。入門最簡單的方法是按一下添加應用程式在應用程式的見解門戶,正如我剛才執行使用方式監測。

執行可用性監視

對於任何 Web 應用程式,它正在其運行的平臺無關的可用性監測工程。它只有可通過互聯網訪問。你可以在世界各地進行測試的可用性和從 Web 應用程式的性能。此模組也是最簡單的方法獲取工作的。

當您選擇可用性功能表內應用的見解時,會提示您提供您的 Web 應用程式的 URL。這將創建一個簡單的基於 URL 的合成監視器與監測的單一位置。

如果您需要監視更複雜的交易,你可能會更好使用編碼的Visual Studio的 Web 效能測試。合成監視器基於相同的錄音功能通常用於負載測試的 Web 應用程式。這可以讓測試一套複雜的操作。要創建單個 URL 或多步合成監視器,按一下綠色添加新合成的監視器圖示並配置所需的設置 (請參閱圖 5)。


圖 5 配置新的合成監視器的設置

工作付諸應用的見解

過去一年,將近 100 內部 Microsoft 團隊和外部行業專家嘗試了早期版本的應用程式的見解和作為一個正式的技術通過程式的一部分提供回饋。他們發現了一些令人驚訝的開發團隊,尤其是強烈的興趣和參與的產品擁有者和非技術性的團隊成員。

早期的消費者同意索引碼的應用程式的見解是加快開發週期的所有此類分析資訊引入Visual Studio線上中的一個位置的能力。

衡量一個 Web 運動第一次的外部客戶,以看看應用的見解之一是 Wintellect — — 一個培訓和諮詢的公司。他們想要瞭解他們的新的需求方面的培訓產品,WintellectNOW 的課程描述的影響。

使用網頁檢視報告中應用的見解,Wintellect 開發者可以將一個 JavaScript 函數添加到立即註冊按鈕,類似于這樣:

function trackCourse()
{
  window.__da.trackEvent("Course",
     window.location.hostname +
     window.location.pathname,
     {"CourseID": "Test401"},
     {"RatingValue": 400});
}

這讓他們衡量和直觀顯示哪些課程說明被最有效地駕駛實際登記。在應用程式的見解中實現自訂事件的詳細資訊,請參閱 aka.ms/aijs

衡量全球 Web 流量 Wintellect 原定在 TechEd 2013 歐洲在馬德里,西班牙上展出。業務人員想要衡量是否公司的存在會增加其產品在歐洲市場的認識的簡單方法。

公司設置了使用報告使用應用程式的見解,並相比的 TechEd 之前一周後一周。從歐洲交通增加了 7%,和它一倍其從西班牙的交通。Wintellect 不需要任何特別的努力,由開發人員來衡量這些成果,因此,其技術團隊能夠專注于可交付結果。

簡化查找、 修復和釋放

應用程式的見解是在微軟的工作。服務工程師負責主要的 Microsoft Web 網站和網頁管理在日常基礎上的 400 多個應用程式。其最高優先事項是減少的時間從發現問題到在地方得到修復。通過設置儀表板和警報應用的見解,他們得到不可用性測試、 性能事件或有辱人格的性能指標的即時的通知。這將有助於解決問題之前的客戶甚至注意到有什麼不對勁, 的工程師。

橫渡設置警報以指示任何時間閾值與最大允許運行時,與可用性監視器的一個團隊。工程師們,然後確定在 Web 視圖中,直接從失敗的原因或將其下載到Visual Studio並查看它作為 Web 測試結果。合成監視器報告表明這些測試只開始進行部署後失敗。然後它繼續另一個部署後運行成功。約四個小時後,進行了 11 配置更改。他們是能夠配合可用性問題直接回實際的代碼和配置更改。這説明了他們馬上診斷事件的根本原因。

與應用程式的見解,您可以優化您的應用程式之前,他們甚至將生成警報。在儀表板中有活動警報、 異常事件、 性能事件、 記憶體事件和性能和可靠性圖表。所有這些指標提供容易理解的資訊,希望改進其應用程式的工程團隊。

選擇任何這些瓦片將帶您到最有可能導致行動的資料。例如,按一下應用程式的見解儀表板中的性能圖 (圖 6) 將帶您到性能頁面 (圖 7)。在此示例中,您可以看到有依賴項,Web 服務和回應時間的強相關性。


圖 6 中應用的見解儀表板


圖 7 應用程式的見解性能頁

按一下記憶體、 異常或性能事件上的儀表板,要到事件頁面中的拼貼。在這裡,您可以篩選、 選擇、 打開記憶體診斷會話、 啟動 IntelliTrace 調試會話或查看的變更集,Visual Studio中引發此事件。

總結

這些是幾個例子的開發團隊如何使用應用程式的見解,與他們的業務團隊以更快地提供更好的軟體更緊密。您可以通過Visual Studio網上訪問應用程式的見解 (visualstudio.com)。

在今後的文章中,我將涵蓋集成基於雲計算的負載測試中的應用的見解。有關創建 Web 測試的更多資訊,請轉到 bit.ly/1im10YI。更多關於可用性監視應用程式的見解,請轉到 bit.ly/1gxgLYk

添加到您的代碼,與Visual Studio線上、 密切融合和節省時間監測的輕鬆,你肯定會查閱這些方案,實現您與應用程式的見解可以完成。

Charles Sterling 20 年來已經在 Microsoft。在 Microsoft 之前,他是一個海洋生物學家為美國國家海洋漁業做白令海海洋哺乳動物研究工作。六年行程結束後在澳大利亞作為一個微軟的產品經理,英鎊目前是回來在雷德蒙德作為Visual Studio開發團隊的高級專案經理。聯繫到他在 chass@microsoft.com

衷心感謝以下技術專家對本文的審閱:
John羅賓斯是的 Wintellect,凡他業務的諮詢和調試服務一邊抬起頭來的創始人之一。他還周遊世界為他掌握.NET 調試和掌握 Windows 調試的課程教學,這樣,開發人員到處都可以學習他用來解決人類已知的最下流的軟體問題的技術。
謝麗爾 · 哈蒙德是 ALM 顧問和帶領實踐團隊在西北節奏,重點研究如何在其中敏捷性、 體系結構和測試做法提高開發人員的生活、 加強小組,和提供更好的軟體。