Tüm Ürünler
Search
Belge Merkezi

Elasticsearch:logstash-input-sls eklentisini kullanma

Son Güncelleme:Oct 04, 2026

logstash-input-sls, Alibaba Cloud Logstash'in yerleşik bir giriş eklentisidir. Bu eklenti, Simple Log Service'ten günlükleri alır.

Not

logstash-input-sls, Alibaba Cloud tarafından sürdürülen açık kaynaklı bir eklentidir. Daha fazla bilgi için bkz. logstash-input-logservice.

Özellikler

  • Dağıtık işbirlikçi tüketim: Birden çok sunucuyu, bir Logstore'daki günlük verilerini aynı anda tüketecek şekilde yapılandırabilirsiniz.

    Not

    Dağıtık işbirlikçi tüketimi gerçekleştirmek üzere birden çok Logstash sunucusu kullanmak istiyorsanız her sunucuda yalnızca logstash-input-sls yüklü tek bir işlem hattının dağıtıldığından emin olun. Bu kısıtlama, logstash-input-sls eklentisinin sınırlamalarından kaynaklanır. Tek bir sunucuda logstash-input-sls yüklü birden çok işlem hattı dağıtırsanız çıktıda yinelenen veriler bulunabilir.

  • Yüksek performans: Bir Java tüketici grubu kullanıldığında tek çekirdekli bir CPU'nun tüketim hızı 20 MB/s'ye ulaşabilir.

  • Yüksek güvenilirlik: logstash-input-sls, tüketim ilerlemesini sunucularda kaydeder. Bir sunucu bir özel durumdan kurtarıldığında veri tüketimine son tüketim kontrol noktasından devam edebilir.

  • Otomatik yük dengeleme: Parçalar, bir tüketici grubundaki tüketici sayısına göre otomatik olarak atanır. Tüketiciler tüketici grubuna katıldığında veya gruptan ayrıldığında logstash-input-sls parçaları otomatik olarak yeniden atar.

Önkoşullar

logstash-input-sls uygulaması

Önkoşullar karşılandıktan sonra Yapılandırma dosyalarıyla Logstash işlem hatlarını yönetme bölümündeki talimatları izleyerek bir işlem hattı oluşturabilirsiniz. Bir işlem hattı oluştururken Parametreler bölümündeki tabloda sağlanan açıklamalara göre işlem hattı parametrelerini yapılandırın. Parametreleri yapılandırdıktan sonra ayarları kaydedip işlem hattını dağıtmanız gerekir. Ardından Alibaba Cloud Logstash, Simple Log Service'ten veri almak için tetiklenir.

Önemli

logstash-input-sls eklentisini bir RAM kullanıcısıyla kullanmadan önce RAM kullanıcısına tüketici grubuyla ilgili izinleri vermeniz gerekir. Daha fazla bilgi için bkz. Tüketici grubuyla günlükleri tüketme.

Aşağıdaki örnekte, bir Logstore'daki günlük verilerini tüketmek ve verileri Alibaba Cloud Elasticsearch'e aktarmak için Alibaba Cloud Logstash'in nasıl kullanılacağı gösterilmektedir:

input {
 logservice{
  endpoint => "your project endpoint"
  access_id => "your access id"
  access_key => "your access key"
  project => "your project name"
  logstore => "your logstore name"
  consumer_group => "consumer group name"
  consumer_name => "consumer name"
  position => "end"
  checkpoint_second => 30
  include_meta => true
  consumer_name_with_ip => true
  }
}

output {
  elasticsearch {
    hosts => ["http://es-cn-***.elasticsearch.aliyuncs.com:9200"]
    index => "<your_index>"
    user => "elastic"
    password => "changeme"
  }
}

Aşağıdaki varsayımları yapalım: Logstore'da 10 parça bulunmaktadır. Her parçanın veri trafiği 1 MB/s'dir. Her Logstash sunucusunun işleme kapasitesi 3 MB/s'dir. Beş Logstash sunucusu tahsis edilir ve her sunucuda logstash-input-sls yüklü tek bir işlem hattı dağıtılır. Her sunucu aynı consumer_group ve consumer_name ayarlarını kullanır. consumer_name_with_ip değeri true olarak ayarlanır.

Bu durumda her sunucuya iki parça atanır ve her parça veriyi 2 MB/s hızında işler.

Parametreler

Aşağıdaki tabloda logstash-input-sls tarafından desteklenen parametreler açıklanmaktadır.

Parametre

Tür

Gerekli

Açıklama

endpoint

String

Evet

Sanal özel cloud (VPC) içindeki Simple Log Service projesinin uç noktası. Daha fazla bilgi için bkz. Dahili Simple Log Service uç noktaları.

access_id

String

Evet

Tüketici grubu üzerinde izne sahip hesabınızın AccessKey ID'si. Daha fazla bilgi için bkz. Tüketici grubuyla günlükleri tüketme.

access_key

String

Evet

Tüketici grubu üzerinde izne sahip hesabınızın AccessKey gizli anahtarı. Daha fazla bilgi için bkz. Tüketici grubuyla günlükleri tüketme.

project

String

Evet

Simple Log Service projesinin adı.

logstore

String

Evet

Logstore'un adı.

consumer_group

String

Evet

Özelleştirilebilen tüketici grubunun adı.

consumer_name

String

Evet

Özelleştirilebilen bir tüketicinin adı. Her tüketicinin adı bir tüketici grubunda benzersiz olmalıdır. Aksi takdirde tanımsız davranışlar oluşabilir.

position

String

Evet

Günlük verilerini tüketmeye başlamak için başlangıç konumu. Geçerli değerler:

  • begin: Veriler, Logstore'a yazılan ilk günlük girdisinden itibaren tüketilir.

  • end: Veriler, geçerli saatten itibaren tüketilir.

  • yyyy-MM-dd HH:mm:ss: Veriler, belirtilen saatten itibaren tüketilir.

checkpoint_second

Number

Hayır

Bir kontrol noktasını tetikleme aralığı. Aralığın 10 sn ile 60 sn arasında bir değere ayarlanmasını öneririz. Minimum değer: 10. Varsayılan değer: 30. Birim: saniye.

include_meta

Boolean

Hayır

Giriş günlüklerinin günlük kaynağı, saat, etiket ve konu gibi meta veriler içerip içermediğini belirtir. Varsayılan değer: true.

consumer_name_with_ip

Boolean

Hayır

Tüketici adının bir IP adresi içerip içermediğini belirtir. Varsayılan değer: true. Dağıtık işbirlikçi tüketim için değeri true olarak ayarlayın.

Performans kıyaslama testi

  • Test ortamı

    • CPU: Intel(R) Xeon(R) Platinum 8163 işlemci @ 2,50 GHz, 4 çekirdek

    • Bellek: 8 GB

    • İşletim sistemi: Linux

  • Logstash işlem hattı yapılandırması

    input {
      logservice{
      endpoint => "cn-hangzhou-intranet.log.aliyuncs.com"
      access_id => "***"
      access_key => "***"
      project => "test-project"
      logstore => "logstore1"
      consumer_group => "consumer_group1"
      consumer_name => "consumer1"
      position => "end"
      checkpoint_second => 30
      include_meta => true
      consumer_name_with_ip => true
      }
    }
    output {
      elasticsearch {
        hosts => ["http://es-cn-***.elasticsearch.aliyuncs.com:9200"]
        index => "myindex"
        user => "elastic"
        password => "changeme"
      }
    }
  • Test prosedürü

    1. Her saniye Logstore'a 2 MB, 4 MB, 8 MB, 16 MB ve 32 MB veri göndermek için bir Java üreticisi kullanın.

      Her günlük girdisi 10 anahtar-değer çifti içerir ve uzunluğu yaklaşık 500 bayttır.

    2. Logstore'daki verileri tüketmek için Logstash'i başlatın. Tüketim gecikme süresinin artmadığından ve tüketim hızının üretim hızına ayak uydurabildiğinden emin olun.

  • Test sonuçları


    Trafik (MB/s)


    CPU kullanımı (%)


    Bellek kullanımı (GB)


    32


    170,3


    1,3


    16


    83,3


    1,3


    8


    41,5


    1,3


    4


    21,0


    1,3


    2


    11,3


    1,3