2

config.yml ファイルで dropwizard グラファイト メトリックス レポーターを構成しようとしました。

metrics:
  reporters:
     - type: graphite
       host: my.graphite.host.com
       port: 2003
       prefix: my.prefix

pom.xml の依存関係として、dropwizard-metrics と metrics-graphite の両方があります。レポーターに関する Application クラスまたは Configuration クラスには何もありません。私は、DropWizard が MetricRegistry とレポーターのすべての初期化と開始を処理するという印象を受けました。それでも、アプリケーションを実行すると、次のエラーが表示されます。

config.yml has an error:

  * Failed to parse configuration at: metrics.reporters; 
Could not resolve type id 'graphite' into a subtype of [simple type, 
class io.dropwizard.metrics.ReporterFactory]: 
known type ids = [ReporterFactory, console, csv, log] 
at [Source: N/A; line: -1, column: -1] 
(through reference chain: com.example.MyConfiguration["metrics"]-  
>io.dropwizard.metrics.MetricsFactory["reporters"])

「グラファイト」が許容されるタイプとして取り上げられないのはなぜですか? 私は何が欠けていますか?

4

2 に答える 2

5

私はあなたが答えを持っていると確信しています - しかし、私は同じ問題を抱えていたので、それを詳しく説明したいと思いました. ドキュメントでは明確ではなかった 3 つのライブラリが必要です。

    <dependency>
        <groupId>io.dropwizard.metrics</groupId>
        <artifactId>metrics-core</artifactId>
        <version>${metrics.version}</version>
    </dependency>
    <dependency>
        <groupId>io.dropwizard</groupId>
        <artifactId>dropwizard-metrics-graphite</artifactId>
        <version>${dw.version}</version>
    </dependency>
    <dependency>
        <groupId>io.dropwizard.metrics</groupId>
        <artifactId>metrics-graphite</artifactId>
        <version>${metrics.version}</version>
    </dependency>
于 2016-02-08T12:02:14.123 に答える