- Add Channelz support (specification here) (#1915)
This adds the following public APIs:getChannelzServiceDefinition(): ServiceDefinition
getChannelzHandlers(): ServiceHandler
These two can be used together to serve the channelz service as follows:server.addService(getChannelzServiceDefinition(), getChannelzHandlers());
Channel#getChannelzRef(): ChannelRef
Server#getChannelzRef(): ServerRef
- Add the admin interface (specification here) (#1915)
Currently the only admin service is Channelz, but more can be added in the future. This adds the following public api:addAdminServicesToServer(server: Server): void
- Add support for timeouts in service configs (#1785)
- Remove type restrictions on Channel options (#1916)
- Report
ECONNRESET
errors with theUNAVAILABLE
status code (#1878) - Tighten type checking for credentials argument to
Server#bindAsync
(#1852) - Pass log messages to different log functions based on severity in custom loggers, and note the severity in the default logger output (#1851)
- Add logging for TLS errors when connecting through a proxy (#1842)
- Refactor code to eliminate runtime dependency cycles (#1829)
Changes to experimental APIs
- Added exports of the following:
Duration
registerAdminService
createChildChannelControlHelper
Picker#extraFilterFactory
has been replaced withPicker#extraFilterFactories
with typeFilterFactory<Filter>[]
CallConfig
has a new propertydynamicFilterFactories
with typeFilterFactory<Filter>[]
ChannelControlHelper
has the new propertiesaddChannelzChild(child: ChannelRef | SubchannelRef)
andremoveChannelzChild(child: ChannelRef | SubchannelRef)