Skip to content

armeria-0.73.0

Choose a tag to compare

@trustin trustin released this 11 Oct 03:06
6690a90

New features

  • Added ServerBuilder.startStopExecutor(Executor) so that a user can specify an alternative Executor other than GlobalEventExecutor which is used when Server invokes start/stop tasks. #1379
  • Added an interface AccessLogWriter which replaces the usage of Consumer<RequestLog> #1381
  • Added KafkaAccessLogWriter which produces Kafka records from RequestLogs. #1381
    • Unlike KafkaStructuredLoggingService, it can even produce the records for unmapped (404) or broken requests (400).
  • Added a flag com.linecorp.armeria.annotatedServiceExceptionVerbosity that allows a user adjust the verbosity of the exceptions raised by annotated services. #1382
    • all - logs all exceptions.
    • unhandled - (default) logs the exceptions that are not:
      • IllegalArgumentException
      • HttpStatusException or HttpResponseException
      • handled by any user-specified ExceptionHandlers
    • none - does not log any exceptions.

Improvements

  • The exception messages logged by annotated services now contain the current ServiceRequestContext. #1383

Bug fixes

  • Fixed a bug where HealthCheckedEndpointGroup does not work correctly when there are multiple endpoints with different IP addresses and same authority. #1375
  • Fixed a bug where armeria-saml does not decode some SAML messages correctly. #1377

Deprecations

  • AccessLogWriters has been deprecated. Use the factory methods in AccessLogWriter. #1381
  • StructuredLogJsonKafkaSerialize has been deprecated. Use @daniel-shuy's kafka-jackson-serializer instead. #1381
  • KafkaStructuredLoggingService has been deprecated. Use KafkaAccessLogWriter. #1381

Breaking changes

  • ServerBuilder.accessLogWriter() does not accept Consumer<? super RequestLog> but AccessLogWriter. #1381
  • The factory methods in AccessLogWriters do not return Consumer<RequestLog> but AccessLogWriter. #1381
  • ExceptionHandlerFunction.DEFAULT has been removed because it was not intended for use by a user. #1383

Dependencies

  • Brave 5.3.3 -> 5.4.2
  • gRPC 1.15.0 -> 1.15.1
  • Netty 4.1.29 -> 4.1.30
    • netty-tcnative-boringssl-static 2.0.15 -> 2.0.17
  • protobuf-jackson 0.2.1 -> 0.3.0