如何使用slf4j和logback为scala中的结构化日志导入StructuredArgument

如何使用slf4j和logback为scala中的结构化日志导入StructuredArgument,scala,logstash,logback,slf4j,structured-logging,Scala,Logstash,Logback,Slf4j,Structured Logging,这可能是一个愚蠢的问题,但我的scala知识有点缺乏。我试图在scala中实现结构化日志记录,我们使用slf4j/logback/logstash。我遇到了以下帖子:描述了如何做到这一点: import static net.logstash.logback.argument.StructuredArguments.*; /* * Add "name":"value" ONLY to the JSON output. * * Since there

这可能是一个愚蠢的问题,但我的scala知识有点缺乏。我试图在scala中实现结构化日志记录,我们使用slf4j/logback/logstash。我遇到了以下帖子:描述了如何做到这一点:

import static net.logstash.logback.argument.StructuredArguments.*;

/*
 * Add "name":"value" ONLY to the JSON output.
 *
 * Since there is no parameter for the argument,
 * the formatted message will NOT contain the key/value.
 *
 * If this looks funny to you or to static analyzers,
 * consider using Markers instead.
 */
logger.info("log message", keyValue("name", "value"));
显然,这是java代码,而不是scala。我已经转换了它,但是我无法让它找到net.logstash.logback.argument.StructuredArguments.KeyValue。我猜这是因为它没有包含在构建中,但这正是我绊倒的地方

我使用的是sbt,包括我期望的软件包:

"net.logstash.logback" %% "logstash-logback-encoder" % VersionOf.`logstash`
但是sbt找不到该软件包(版本为1.2.1)。让我困惑的是,我们对logback的其他依赖项是从组id:ch.qos.logback中提取出来的。我真的不明白ch.qos.logback是什么,为什么它与net.logstash.logback不同

长话短说,我需要使用sbt导入什么软件包,以便在日志记录中使用StructuredArguments/KeyValues