RousselTMLEARNING

Article · Vector: from discovery to expertise

Sinks in detail

This article is available in French.

1. Rôle des sinks #

La sortie de la topologie.

Principe #

Topologie Vector
Un sink peut lire plusieurs inputs ; plusieurs sinks peuvent lire le même input.
DestinationSink
Logsloki, elasticsearch, splunk_hec_logs, datadog_logs, clickhouse
Métriquesprometheus_exporter, prometheus_remote_write, datadog_metrics
Archives et filesaws_s3, gcp_cloud_storage, azure_blob, kafka
Génériquehttp, opentelemetry, vector (vers un agrégateur), console

2. Exemples #

Les sinks les plus courants.

Configuration #

sinks:
  loki:
    type: loki
    inputs: [aiguiller._unmatched, echantillon]
    endpoint: http://loki:3100
    encoding: { codec: json }
    labels:                            # peu de labels, bornés
      namespace: "{{ kubernetes.pod_namespace }}"
      app: "{{ kubernetes.pod_labels.app }}"
  elastic:
    type: elasticsearch
    inputs: [aiguiller.erreurs]
    endpoints: [https://es:9200]
    mode: data_stream
    auth: { strategy: basic, user: vector, password: "${ES_PASSWORD}" }
  archive:
    type: aws_s3
    inputs: [nettoyer]
    bucket: archives-logs
    region: eu-west-3
    key_prefix: "date=%F/"
    compression: gzip
    encoding: { codec: json }
    batch: { max_bytes: 100000000, timeout_secs: 300 }
  metriques:
    type: prometheus_exporter
    inputs: [compteur_erreurs, vector_interne]
    address: 0.0.0.0:9598

3. Fiabilité #

Lots, tampons, réessais, santé.

Réglages #

Fonctionnement d'un sink
Un tampon disque survit aux redémarrages ; when_full: block propage la contre-pression vers les sources.
  loki:
    type: loki
    inputs: [nettoyer]
    endpoint: http://loki:3100
    healthcheck: { enabled: true }     # vérifié au démarrage
    batch: { max_bytes: 1048576, timeout_secs: 1 }
    request:
      retry_attempts: 10
      retry_initial_backoff_secs: 1
      retry_max_duration_secs: 300
      concurrency: adaptive            # ajuste le parallélisme selon la latence observée
    buffer:
      type: disk
      max_size: 2147483648             # 2 Go
      when_full: block
    acknowledgements: { enabled: true }
  • concurrency: adaptive (ARC) réduit automatiquement le parallélisme quand la destination ralentit.
  • Surveillez vector_component_sent_events_total, vector_buffer_events et vector_component_errors_total par sink.
  • vector top affiche le débit de chaque composant en direct.
Bonne Pratique : Pour des volumes importants, placez Vector en agrégateur derrière des agents légers (Vector ou Fluent Bit) : l'agrégateur porte les tampons disque et les transformations coûteuses.

📄 Vector : les sinks en détail (destinations, lots, tampons et réessais) →

My progress

  • ⏱ Estimated time : ≈ 8 min

Sign in to track your progress and take notes. Sign in

💬 Ask a question

Recommended Articles

Vector : les sources en détail

Les sources de Vector : fichiers, logs Kubernetes, journald, syslog, sockets, HTTP, OpenTelemetry...

Vector : sources, transforms, sinks et topologie

Les concepts de Vector (sources, transforms, sinks), la configuration YAML, les composants couran...

Vector : les transforms en détail (remap et VRL, route, filter, réduction et métriques)

Transformer les événements dans Vector : remap et le langage VRL (analyse, enrichissement, gestio...

Bonnes pratiques de collecte de logs avec Fluent Bit et Vector

Check-list de production pour la collecte de logs : structure, filtrage à la source, masquage, ta...

Fluent Bit : les inputs (entrées) du pipeline en détail

Tout sur les inputs de Fluent Bit : rôle des tags, lecture de fichiers avec tail (positions, rota...

Fluent Bit : les outputs (sorties), routage et fiabilité de l'envoi

Envoyer les données de Fluent Bit : routage par Match et Match_Regex, sorties Loki, Elasticsearch...

Fluent Bit ou Vector ? Choisir, combiner et migrer

Comparer Fluent Bit et Vector (performances, transformations, écosystème, gouvernance), les combi...

Collecteurs de logs légers : Fluent Bit, Vector et les autres

Pourquoi un collecteur de logs, ce qui distingue les agents légers (Fluent Bit, Vector) des colle...

Transformer avec VRL et tester ses pipelines Vector

Le langage VRL (Vector Remap Language) : analyse de logs (JSON, regex, syslog), gestion des erreu...

Support us

♥ SUPPORT US

Support RousselTM Learning

Courses, articles, labs and certificates stay free with no intrusive ads. A voluntary contribution, of any amount you choose, pays for hosting, lab environments and new content.

Contribute with PayPal Any amount · card or PayPal accountLearn more
QR code PayPal
Or scan this QR code with your phone

Thank you, every contribution counts!