ngx-export-tools-extra 0.5.2.0 → 0.5.2.1
raw patch · 2 files changed
+20/−20 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
NgxExport/Tools/Prometheus.hs view
@@ -226,8 +226,8 @@ -- location \/ { -- haskell_run __/toPrometheusMetrics/__ $hs_prom_metrics -- '[\"__/main/__\"--- ,__/$cnt_collection/__--- ,__/$cnt_histograms/__+-- ,$__/cnt_collection/__+-- ,$__/cnt_histograms/__ -- ,{\"cnt_stub_status_active\": $cnt_stub_status_active -- ,\"cnt_uptime\": $cnt_uptime -- ,\"cnt_uptime_reload\": $cnt_uptime_reload@@ -620,8 +620,17 @@ -- histogram $__/hst_u_response_time/__ 11 $u_response_time_bucket; -- haskell_run scale1000 $hs_u_response_time_scaled $hs_u_response_time; -- counter $__/hst_u_response_time_sum/__ inc $hs_u_response_time_scaled;+--+-- counter $__/hst_u_response_time_00/__ undo;+-- counter $__/hst_u_response_time_cnt/__ undo; -- @ --+-- Notice that the first bucket /hst_u_response_time_00/ and the total count+-- value /hst_u_response_time_cnt/ of histogram /hst_u_response_time/ were+-- temporarily disabled to not count visiting unrelated locations (i.e. /\//,+-- /\/1/, and /\/404/): the two counters will be later re-enabled in locations+-- related to proxying requests.+-- -- So many new variables require a bigger hash table to store them. -- -- @@@ -629,7 +638,7 @@ -- @ -- -- And finally, we have to update counters declarations in--- /simpleService_prometheusConf/ and add location /\/backends/ in the main+-- /simpleService_prometheusConf/ and add location /\/backends/ in the main -- server. -- -- @@@ -657,19 +666,24 @@ -- @ -- @ -- location \/backends {+-- counter $__/hst_u_response_time_00/__ inc $inc_hst_u_response_time_00;+-- counter $__/hst_u_response_time_cnt/__ inc $inc_hst_u_response_time_cnt; -- error_page 404 \@status404; -- proxy_intercept_errors on; -- proxy_pass http:\/\/backends; -- } -- -- location \@status404 {+-- counter $__/hst_u_response_time_00/__ inc $inc_hst_u_response_time_00;+-- counter $__/hst_u_response_time_cnt/__ inc $inc_hst_u_response_time_cnt; -- echo_sleep 0.2; -- echo \"Caught 404\"; -- } -- @ -- -- We are going to additionally increase response time by /0.2/ seconds when a--- backend server responds with HTTP status /404/.+-- backend server responds with HTTP status /404/, and this is why location+-- /\@status404/ was added. -- -- ==== A simple test --@@ -754,21 +768,7 @@ -- and 9), the sum of cumulative response times from backends is approximately 5 -- seconds, while the sum of all requests durations is approximately 7 seconds -- which corresponds to 11 visits to location /\@status404/ and the sleep time--- /0.2/ seconds that was added there. Notice that upstream response times will--- be updated on entering /any/ location in the main server as the histogram and--- its sum counter were declared on the server level. To update the histogram on--- entering location /\/backends/ only, it is possible to move the declarations--- inside this location, however in this case there will be no updates in--- location /\@status404/ as there is no way to declare the same histogram more--- than once in a single counter set. Another solution would be putting line------ @--- set $u_response_time_bucket unavailable;--- @------ into all other locations of the main server (i.e. /\//, /\/1/, and /\/404/):--- in this case only counter /hst_u_response_time_err/ will be updated when--- entering these locations.+-- /0.2/ seconds that was added there. extractValues :: ByteString -> [ByteString] extractValues = filter ((&&) <$> not . C8.null <*> isDigit . C8.head)
ngx-export-tools-extra.cabal view
@@ -1,5 +1,5 @@ name: ngx-export-tools-extra-version: 0.5.2.0+version: 0.5.2.1 synopsis: More extra tools for Nginx haskell module description: More extra tools for <https://github.com/lyokha/nginx-haskell-module Nginx haskell module>.