2016年4月6日 星期三

Profile ASP.NET Application 使用 Prefix

前不久在 feedly 裡看到訂閱的 Mikesdotnetting 部落格介紹了一個免費的 ASP.NET 監控工具「Prefix」,大致看了一下介紹,發現到這的確是個不錯的工具,所以就寫篇文章來做個簡單介紹。

這部落格也介紹了一些 Profile 的工具,例如 miniProfiler, Glimpse 等,但這個 Prefix 與前面所提的有什麼不同呢?看下去就知道。

 


我是在這一篇文章「Exploring Prefix: A Free ASP.NET Profiling Tool | Mikesdotnetting」裡看到的,作者介紹的相當清楚,所以應該不用我做太多的介紹,但還是小提一下, Prefix 這個工具是由 Stackify 這家公司所開發的,而 Stackify 則是有提供 APM(Application Perfirmance Monitoring), Metrics, Errors, Logs 等服務,不過服務是要收費的,但Prefix 是個免費的工具。

http://stackify.com/

image

 

Prefix

http://www.prefix.io/

建議各位可以先看影片先瞭解,然後再開啟 Live Demo,你就會瞭解到這是個相當不錯的工具。

image

Live Demo
http://demo.prefix.io/

image

程式下載位置(如已失效,請到 http://www.prefix.io/ 下載)
https://stackifyprodwest.blob.core.windows.net/prefix-latest/StackifyPrefixSetup.exe

 

Prefix Support & Documentation

http://support.stackify.com/hc/en-us/categories/201177633-Prefix

image

 

Key Features

  • Find slow SQL queries, web service calls, etc
  • View logging, Debug, & Trace statements
  • Runs only on a developer’s workstation. No server installs.
  • Supports 30+ common .NET libraries (view list)
  • Runs in the background and is always there when you need it

     

     

    安裝

    一開始的步驟會花一點點時間(看電腦的速度)

    SNAGHTML23dce505

    安裝完成

    SNAGHTML23dde0ca

    安裝完成後就會立即執行,然後可以在系統列裡看到 Prefix 的圖示

    image

    在圖示上按下右鍵,

    image

     

    執行網站並啟用 Profix Profiler

    這邊我開啟一個已經在本機 IIS 設定好的網站內容,然後啟用 Prefix Profiler 來監控,先講一下,Prefix Profiler 是網頁呈現監控內容,而 IE 11 只能呈現空白的 Prefix Profiler 畫面,但是沒有任何資料,不過 Edge, Firefox, Chrome 都是可以正常顯示的。

    第一次執行 Prefix Pofiler 時會先看到以下的畫面

    image

    輸入 Email(並不需要在寄來的 email 裡驗證) 並點選「Activate」後,接著就會看到下面的畫面,在啟動的過程中,請隨時注意瀏覽器裡網頁的右下方,會有一些訊息顯示(這邊並沒有截圖),別錯過一些訊息,

    image

    最後在執行網站與操作的同時,Prefix Profiler 就會隨時更新與顯示每次 Request 所追蹤監測到的資訊,這些資訊並不需要另外在原本的專案程式裡去改寫過增加程式碼

    image

    Prefix Profiler 右上方的選單內容

    image

    All Settings

    image

    Enable Profiler

    image

    Disable Profiler

    image

     

    監控 IIS Express 所執行的網站

    這個情況通常是在開發的階段,在進入偵錯或是在 Visual Studio 執行網站啟動但不進入偵錯模式,也會需要去觀測網站執行時每個 Request 的過程與內容,

    image

    如果在 Prefix Profiler 持續看到以下的內容與訊息,這表示要修改專案檔(*.csproj)的設定,

    image

    依據以下的文章,對 csproj 檔案設定內容做了調整,但是要特別注意的是,似乎只有在 VS2015 以及在 VS2015 所建立的專案才能夠讓 Prefix Profiler 功能可以正常監控到專案,

    How to configure IIS Express for Prefix

    要修改的地方是專案檔 csproj 裡面的 UseGlobalApplicationHostFile 這個屬性,要設定為 true

    image

    修改過後,重新載入專案並且重新執行網站,Prefix Profiler 就可以監控到網站的執行內容,以下是監控一個 ASP.NET Web API 的內容,

    image

     

    如何呢?還不錯的一個工具吧!就找個專案來試試吧~

     


    有關安裝與使用、設定等,可以查看以下幾個影音教學

    Stackify Prefix Launch Webinar

    Welcome to Prefix Getting Started

    How to install prefix for .NET Complete Walkthrough

    Stackify Prefix for VS2015 IIS Express

    Configuring logging for Prefix

    Prefix Tips and Tricks - Advanced Walkthrough

     

    有關 Prefix 與 Glimpse 的比較,可以看以下的文章

    Prefix vs Glimpse: SQL Queries - Stackify

     

    參考連結

    Exploring Prefix: A Free ASP.NET Profiling Tool | Mikesdotnetting

    How to configure IIS Express for Prefix

    Troubleshooting Prefix

     

    以上

  • 沒有留言:

    張貼留言

    提醒

    千萬不要使用 Google Talk (Hangouts) 或 Facebook 及時通訊與我聯繫、提問,因為會掉訊息甚至我是過了好幾天之後才發現到你曾經傳給我訊息過,請多多使用「詢問與建議」(在左邊,就在左邊),另外比較深入的問題討論,或是有牽涉到你實作程式碼的內容,不適合在留言板裡留言討論,請務必使用「詢問與建議」功能(可以夾帶檔案),謝謝。