2013-04-17 49 views
0

我想跟蹤到達我的GAE前端實例的所有請求的cpm_usd value。我在我的應用程序的logs中看到cpm_usd標題。 但有沒有辦法在運行時訪問這些數字,以便繪製它們?我想爲每個端點創建一個接近實時的成本度量標準。如何以編程方式測量請求的成本(cpm_usd)?

  • /REST/foo1:$ 0.000011
  • /REST/foo2的:$ 0.000013
  • /REST/BAR1:$ 0.000014
  • /REST/BAR2:$ 0.000016

是否有值得信賴的測試人員程序來做到這一點?如果沒有,是否有另一種方法來做到這一點,而不涉及解析我的日誌文件?或者我只能通過解析背景中的日誌來獲取這些數字嗎?

更新

如上所述here,我嘗試添加其攔截{添加,設置}部首一個sitebricks請求濾波器()調用。

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { 
    chain.doFilter(request, new HttpServletResponseWrapper((HttpServletResponse) response) { 
     @Override 
     public void setHeader(String name, String value) { 
      if ("X-AppEngine-Estimated-CPM-US-Dollars".equals(name)) { 
       // log request costs 
      } 
      super.setHeader(name, value); 
     } 

     @Override 
     public void addHeader(String name, String value) { 
      if ("X-AppEngine-Estimated-CPM-US-Dollars".equals(name)) { 
       // log request costs 
      } 
      super.addHeader(name, value); 
     } 
    }); 
} 

我假設標題有不同的名稱或GAE設置不同的標題。無論如何,我從來沒有看到成本頭被抓住。

回答

2

標題由位於實例前面的應用程序服務器添加,因此您無法從代碼中訪問此標題。

您將不得不解析日誌文件,並可以考慮使用log2bq來執行此操作。

+0

如果我不能訪問標題,有沒有辦法接收每個URL的成本信息,否則呢?如果不是會有Trusted Tester程序用於類似的事情嗎?這樣的API不一定要以美元返還成本。主要動機是查看隨時間推移的「成本」趨勢並比較每個URL的「成本」。 – Ingo

相關問題