RPC over HTTP support withdrawn
It has been officially discontinued by Microsoft on 2017-10-31. It's no use trying to support it five years after.
Support for 303 and 308 redirection codes
Improved default error responses
New special backend: Error
The Error
statement defines a special backend that returns the HTTP error page. It takes one to two arguments:
Error STATUS [FILE]
The STATUS argument supplies HTTP status code. Optional FILE argument is the name of a disk file with the error page content (HTML). If not supplied, the text is determined as usual: first the Err
STATUS statement for the enclosing listener is consulted. If it is not present, the default error page is used.
New special backend: Metrics
This backend type implements openmetrics telemetry endpoint. The minimal configuration is:
Service
URL "/metrics"
Metrics
End
Enabling backend statistics (see below) is strongly suggested when using the Metrics
backend.
Backend statistics
Backend usage statistics is enabled by the BackendStats
configuration directive:
BackendStats true
When enabled, the stats
object will be added to the JSON output for each backend. This object holds the following fields:
request_count
Number of requests processed by this backend.request_time_avg
Average request processing time.request_time_stddev
Standard deviation of the above.
The Metrics
backend, if declared, will then include the following metric families in its output
pound_backend_requests
pound_backend_request_time_avg_nanoseconds
pound_backend_request_stddev_nanoseconds
These three families are labeled by the corresponding backend index, e.g.:
pound_backend_request_time_avg_nanoseconds{listener="1",service="1",backend="1"} 17232220
Core statistics
The default output returned by pound control thread now includes additional core statistics: pound version, PID, worker subsystem configuration and state. The default poundctl template has been changed to reflect it.
New options: -F
and -e
The -F
option forces the foreground mode: the program won't detach itself from the controlling terminal and will remain in foreground even if configuration settings require otherwise.
The -e
option directs error diagnostics to stderr (stdout for LOG_DEBUG
and LOG_INFO
facilities). It implies foreground mode.
Changes in verbose mode (-v
)
Error messages emitted to stderr (stdout) are duplicated in the syslog, if the configuration settings require so.
Arithmetic operations in poundctl templates
Four new functions are provided to implement basic arithmetic operations in templates: add
, sub
, mul
, and div
.