【问题标题】:Using loggers in a static context in Akka actors在 Akka Actor 的静态上下文中使用记录器
【发布时间】:2018-06-05 13:02:51
【问题描述】:

我正在使用 Akka 推荐的事件日志记录来记录参与者:

public class MyActor extends AbstractActor {
  private final LoggingAdapter logger = Logging.getLogger(getContext().getSystem(), this);

  @Override
  public Receive createReceive() {
    // do stuff here
      logger.log("Did Stuff here");

    }).matchAny(unhandled -> unhandled(unhandled)).build();
  }

  public static helperMethodForActorTodoItsJob() {
    // Can't log here because of the static context?
  }
} 

我明白为什么建议在actors中使用事件记录,但是如何登录静态方法呢?我应该创建另一个记录器吗?它如何影响性能?或者我不应该在演员中使用静态方法?这里的最佳做法是什么?

【问题讨论】:

    标签: java logging static akka event-log


    【解决方案1】:

    通常,您可以做的是将通过log() 方法获得的LoggingAdapter(即如果您选择扩展AbstractLoggingActor)作为参数传递给您的类方法。如果这是您想要做的,则取决于您首先希望它是静态的原因和/或该方法的作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-13
      • 2021-01-29
      • 2016-12-14
      • 2012-05-07
      • 1970-01-01
      • 2020-06-15
      相关资源
      最近更新 更多