packages feed

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>.