• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Intégration Apache Druid

L'intégration d'Apache Druid avec New Relic améliore votre capacité à monitorer, analyser et optimiser les performances de votre cluster Druid. L'intégration Apache Druid fournit de puissantes fonctionnalités monitoring et d'alerte afin que vous puissiez garantir la fiabilité et l'efficacité de votre plateforme d'analyse basée sur Druid.

Apache Druid dashboard

Après avoir configuré l'intégration d'Apache Druid avec New Relic, visualisez vos données dans un dashboard dès la sortie de la boîte.

Configurer l'intégration Apache Druid

Suivez les étapes suivantes pour configurer l’intégration Apache Druid :

Installer l' agent d'infrastructure

Pour utiliser l’intégration Apache Druid, vous devez d’abord installer l’agent d’infrastructure sur le même hôte. L'agent infrastructure monitore l'hôte lui-même, tandis que l'intégration Apache Druid étend votre monitoring avec des données spécifiques à votre cluster Druid.

exposer les métriques Druid à l'aide de Prometheus Emitter

  1. Ajoutez prometheus.emitter à la fin de la liste de chargement des extensions dans votre fichier apache-druid-$version/conf/druid/single-server/micro-quickstart/_common/common.runtime.properties :

    druid.extensions.loadList=["druid-hdfs-storage", "druid-kafka-indexing-service", "druid-datasketches", "druid-multi-stage-query", "prometheus-emitter"]
  2. Dans les chemins de fichiers répertoriés dans la colonne de gauche, ajoutez l’extrait de code répertorié dans les colonnes de droite.

    Chemin de fichier

    Snippet de code

    PATH/TO/broker/runtime.properties

    # Monitoring
    druid.monitoring.monitors=["org.apache.druid.java.util.metrics.JvmMonitor"]
    druid.emitter=prometheus
    druid.emitter.logging.logLevel=info
    druid.emitter.prometheus.strategy=exporter
    druid.emitter.prometheus.port=19091

    PATH/TO/coordinator-overlord/runtime.properties

    # Monitoring
    druid.monitoring.monitors=["org.apache.druid.java.util.metrics.JvmMonitor"]
    druid.emitter=prometheus
    druid.emitter.logging.logLevel=info
    druid.emitter.prometheus.strategy=exporter
    druid.emitter.prometheus.port=19092

    PATH/TO/historical/runtime.properties

    # Monitoring
    druid.monitoring.monitors=["org.apache.druid.java.util.metrics.JvmMonitor"]
    druid.emitter=prometheus
    druid.emitter.logging.logLevel=info
    druid.emitter.prometheus.strategy=exporter
    druid.emitter.prometheus.port=19093

    PATH/TO/middleManager/runtime.properties

    # Monitoring
    druid.monitoring.monitors=["org.apache.druid.java.util.metrics.JvmMonitor"]
    druid.emitter=prometheus
    druid.emitter.logging.logLevel=info
    druid.emitter.prometheus.strategy=exporter
    druid.emitter.prometheus.port=19094

    PATH/TO/router/runtime.properties

    # Monitoring
    druid.monitoring.monitors=["org.apache.druid.java.util.metrics.JvmMonitor"]
    druid.emitter=prometheus
    druid.emitter.logging.logLevel=info
    druid.emitter.prometheus.strategy=exporter
    druid.emitter.prometheus.port=19095

Installer l'extension de l'émetteur Prometheus

  1. Exécutez les commandes suivantes pour créer un dossier nommé prometheus-emitter dans le répertoire de dossiers extensions de votre configuration Apache Druid :

    bash
    $
    cd apache-druid-$version/extensions/
    bash
    $
    sudo mkdir prometheus-emitter
  2. Accédez au répertoire de téléchargement de druid et exécutez la commande suivante pour créer des fichiers jar que le serveur appelle au démarrage :

    bash
    $
    sudo java \
    >
    -cp "lib/*" \
    >
    -Ddruid.extensions.directory="extensions" \
    >
    -Ddruid.extensions.hadoopDependenciesDir="hadoop-dependencies" \
    >
    org.apache.druid.cli.Main tools pull-deps \
    >
    --no-default-hadoop \
    >
    -c "org.apache.druid.extensions.contrib:prometheus-emitter:24.0.0"

Configure nri-prometheus

  1. Créez un fichier nommé nri-prometheus-config.yml:

    bash
    $
    touch /etc/newrelic-infra/integrations.d/nri-prometheus-config.yml
  2. Ajoutez le snippet suivant à votre fichier nri-prometheus-config.yml pour activer la capture des données Apache Druid :

    integrations:
    - name: nri-prometheus
    config:
    # When standalone is set to false nri-prometheus requires an infrastructure agent to work and send data. Defaults to true
    standalone: false
    # When running with infrastructure agent emitters will have to include infra-sdk
    emitters: infra-sdk
    # The name of your cluster. It's important to match other New Relic products to relate the data.
    cluster_name: "Apache-druid"
    targets:
    - description: Secure etcd example
    urls: ["http://<YOUR_HOST_IP>:19091/metrics","http://<YOUR_HOST_IP>:19092/metrics", "http://<YOUR_HOST_IP>:19093/metrics","http://<YOUR_HOST_IP>:19094/metrics","http://<YOUR_HOST_IP>:19095/metrics"]
    # tls_config:
    # ca_file_path: "/etc/etcd/etcd-client-ca.crt"
    # cert_file_path: "/etc/etcd/etcd-client.crt"
    # key_file_path: "/etc/etcd/etcd-client.key"
    # Whether the integration should run in verbose mode or not. Defaults to false.
    verbose: false
    # Whether the integration should run in audit mode or not. Defaults to false.
    # Audit mode logs the uncompressed data sent to New Relic. Use this to log all data sent.
    # It does not include verbose mode. This can lead to a high log volume, use with care.
    audit: false
    # The HTTP client timeout when fetching data from endpoints. Defaults to "5s" if it is not set.
    # This timeout in seconds is passed as well as a X-Prometheus-Scrape-Timeout-Seconds header to the exporters
    # scrape_timeout: "5s"
    # Length in time to distribute the scraping from the endpoints. Default to "30s" if it is not set.
    scrape_duration: "5s"
    # Number of worker threads used for scraping targets.
    # For large clusters with many (>400) endpoints, slowly increase until scrape
    # time falls between the desired `scrape_duration`.
    # Increasing this value too much will result in huge memory consumption if too
    # many metrics are being scraped.
    # Default: 4
    # worker_threads: 4
    # Whether the integration should skip TLS verification or not. Defaults to false.
    insecure_skip_verify: false
    timeout: 10s

Transférer le log du druide vers New Relic

  1. Modifiez le fichier de log nommé logging.yml situé au chemin suivant :

    bash
    $
    cd /etc/newrelic-infra/logging.d
  2. Ajoutez le snippet suivant au fichier logging.yml :

    - name: druid-logs
    file: /home/<Druid-Download Directory>/log/*.log
    attributes:
    logtype: apache-druid

Redémarrer l' agent d'infrastructure

Utilisez les instructions de notre documentation sur l’agent d’infrastructure pour redémarrer votre agent d’infrastructure. Il s’agit d’une commande de base qui devrait fonctionner pour la plupart des gens :

bash
$
sudo systemctl restart newrelic-infra.service

Consultez les métriques de votre druide dans New Relic

Une fois la configuration ci-dessus terminée, vous pouvez afficher vos métriques à l'aide de notre modèle dashboard prédéfini. Pour accéder à ce dashboard:

  1. Rendez-vous sur one.newrelic.com > + Integrations & Agents.

  2. Cliquez sur l’onglet Dashboards .

  3. Dans le champ de recherche, tapez Apache druid.

  4. Sélectionnez-le et cliquez sur Install.

    Pour instrumenter le quickstart Apache Druid et voir les métriques et les alertes, vous pouvez également suivre notre pageApache Druid quickstart en cliquant sur le bouton Install now.

    Voici un exemple de requête pour vérifier la taille moyenne du segment Druid :

    SELECT average(druid_segment_size) AS 'MiB' FROM Metric SINCE 30 MINUTES AGO

Quelle est la prochaine étape ?

Pour en savoir plus sur la création de requêtes NRQL et la génération de dashboards, consultez ces documents :

  • Introduction au générateur de requêtes pour créer des requêtes basiques et avancées.
  • Introduction au dashboard pour personnaliser votre dashboard et effectuer différentes actions.
  • Gérez votre dashboard pour ajuster votre mode d'affichage ou pour ajouter plus de contenu à votre dashboard.
Droits d'auteur © 2025 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.