RabbitMQ yönetim konsolu
Kuyrukları, mesaj akışını, broker topolojisini ve yönetim ayarlarını birlikte takip edin.
Mesaj akışının tamamı
RabbitMQ konsolu kuyruk listesinin ötesinde exchange, binding, connection, channel ve consumer bilgilerini ilişkilendirir. Mesaj inceleme ve işlem araçları, sorunu üretici, yönlendirme veya tüketici tarafında daraltmanıza yardım eder.
- Kuyruk/exchange detayları, mesaj görüntüleme ve yetkili mesaj işlemleri.
- Broker/node durumu, tanılama, alarmlar ve zaman içindeki göstergeler.
- Stream ve super stream araçları; mesaj replay işleri.
- Protobuf şemalarıyla desteklenen mesaj içeriklerini yorumlama.
Topoloji ve yönetim
- Policy, vhost, kullanıcı, izin ve limit yönetimi.
- Definition araçları ve yönetilen nesnelerin incelenmesi.
- Federation ve Shovel yapılandırmalarının takibi.
- Bağlantıya özgü ayarlar ve favori kuyruklar.
Büyüyen bir kuyruğu inceleme
Yönetim ekranları erişilebilir RabbitMQ Management API gerektirir. Stream, Federation ve Shovel işlevleri ilgili broker sürümü ve eklentilerinin bulunmasına bağlıdır. Mesaj tüketme, taşıma, purge ve replay işlemleri gerçek mesaj akışını değiştirir.
- Genel bakışta broker alarmlarını ve bağlantıları kontrol edin.
- Hedef vhost ve kuyruğu açın; hazır/onaysız mesajları ve consumer durumunu karşılaştırın.
- İzin verilen mesaj görüntüleme yöntemini seçin ve bunun tüketim davranışını kontrol edin.
- Yönlendirme sorununda exchange/binding topolojisini; işleme sorununda consumer ve uygulama loglarını inceleyin.
Bağlantı, vhost, yenileme ve yazma modu
RabbitMQ konsolu bağlantı ve vhost bağlamıyla çalışır. Overview, Connections, Exchanges, Queues, Streams, Topology, Policies, Alarms ve Administration sekmeleri vardır. Global arama ve otomatik yenileme günlük incelemeyi hızlandırır. Arayüzdeki yazma modu, bağlantının salt okunur kilidini veya eksik yetkiyi aşmaz.
- Yenileme kapalı, 5, 10, 30 veya 60 saniye olarak seçilebilir.
- Arama için /, yenileme için r; g ardından ilgili sekme harfi kullanılabilir; ? kısayolları gösterir.
- Bağlantıda mesajlaşma endpoint’i ve management endpoint’i farklıdır; AMQP bağlantısının başarılı olması yönetim API’sinin çalıştığını kanıtlamaz.
Broker özeti, node sağlığı ve tanılama
Genel görünüm mesaj akışını, bağlantıları, node durumunu ve mevcut metrikleri birlikte sunar. Bellek, disk, alarm ve cluster bilgilerini seçili zaman aralığıyla yorumlayın. Özellik bayrakları ve kullanımdan kaldırılmış özellikler sunucunun yükseltme/uyumluluk durumunu değerlendirmek için yardımcıdır.
- Doğru vhost ve zaman aralığını seçin.
- Node, bellek, disk ve sağlık göstergelerini inceleyin.
- Tanı sonuçlarında hatayı kaynak kuyruğa veya bağlantıya daraltın.
- Management API yetkisi veya eklenti eksikliğini gerçek sıfır trafik ile karıştırmayın.
Bağlantılar, kanallar ve tüketiciler
Connections alanı broker’a bağlı istemcileri, kanalları ve tüketicileri incelemek için kullanılır. Bağlantı düzeyindeki sorun ile tek kanaldaki tüketici sorunu farklıdır. Ad, kullanıcı, vhost, node ve mevcut istatistikleri birlikte kontrol edin.
- Bir bağlantıyı kapatmak o bağlantıdaki kanalları ve uygulama tüketimini etkileyebilir.
- Tüketici sayısı ile mesaj işleme hızı aynı ölçüm değildir.
- Sonlandırma öncesinde hedef uygulamayı doğrulayın; otomatik yeniden bağlanan uygulama kısa süre sonra yeni bağlantı oluşturabilir.
Exchange oluşturma ve binding yönetimi
Exchange, mesajı routing key ve binding kurallarına göre hedeflere yönlendirir. Formdaki exchange türü, durable, auto-delete ve argümanlar broker davranışını belirler. Binding kurulurken kaynak exchange, hedef queue/exchange ve routing key birlikte seçilir; queue adının aynı olması doğru vhost’u garanti etmez.
- Vhost ve exchange türünü seçin.
- Gerekli exchange’i oluşturun veya mevcut olanı inceleyin.
- Hedef queue/exchange için binding ve routing key tanımlayın.
- Yayınlanan test mesajının beklenen hedefe ulaştığını kuyruk istatistiğiyle doğrulayın.
Classic, quorum ve stream kuyruğu oluşturma
Kuyruk formu tipe göre kullanılabilir x-argument alanlarını sunar. İsim, tür, durable ve auto-delete seçeneklerini belirleyin. Aynı isimle farklı özellikte bir kuyruk tanımlamak broker tarafından reddedilebilir; mevcut kuyruğu formu tekrar kaydederek her yönüyle dönüştürebileceğinizi varsaymayın.
- DLX, TTL, expires, uzunluk sınırı, overflow ve delivery limit ayrı amaçlara sahiptir.
- Single active consumer, öncelik ve leader locator seçeneklerinin uygunluğu kuyruk tipine bağlıdır.
- Stream retention ve segment alanları stream veri saklama davranışını belirler.
- Serbest JSON argümanları ile yardımcı alanların birleşimini ve uygulanacak policy önizlemesini kontrol edin.
Kuyruk ayrıntıları, purge ve silme
Kuyruk ayrıntısında ready, unacked, consumer ve hız değerleri mesaj akışını anlamak için birlikte değerlendirilir. Ready mesaj tüketilmeyi bekler; unacked mesaj tüketiciye gönderilmiş fakat onaylanmamıştır. Purge, kuyruğu silmekle aynı işlem değildir; kuyruk tanımı ile mesaj verisinin kapsamı farklıdır.
- Kuyruk türünü, vhost’u ve tüketicileri kontrol edin.
- Mesaj birikmesinin ready mi unacked mı olduğunu belirleyin.
- Purge/silme gerekiyorsa kapsam ve onay açıklamasını inceleyin.
- Sonuçta kuyruk, binding ve tüketici durumunu yeniden kontrol edin.
Mesaj okuma ve ACK/requeue seçenekleri
Classic ve quorum kuyruklarında Get Messages bütünüyle yan etkisiz bir görüntüleme değildir. Requeue yapılan okuma mesajı redelivered olarak işaretleyebilir; bazı quorum sürümlerinde teslimat sınırına etki eder. Requeue yapılmayan mod mesajı kuyruktan kaldırabilir ve ayrıca consume yetkisi/onay gerektirir.
- Okunacak adet, ACK modu ve gösterilecek payload boyutunu seçin.
- İçeriğin kesilmiş olması gerçek mesajın kısa olduğu anlamına gelmez.
- Kubernetes üzerinde uygun quorum kuyruğunda sunulan peek alternatifi ayrı bir erişim yoludur; Pod exec yetkisi ve broker komutu gerektirir.
- Mesaj inceleme aracını üretim tüketicisi gibi sürekli çalıştırmayın; teslimat davranışını hesaba katın.
Mesaj filtreleme, decoder ve Protobuf
Mesaj taramasında metin, düzenli ifade, JSONPath, JSONPath eşitliği, header adı/değeri ve routing key filtreleri bulunur. Tarama kapsamı ve bütçesi bütün kuyruğu kapsamayabilir. Decoder seçimi payload’ın nasıl görüntüleneceğini belirler; yanlış decoder okunabilir görünmeyen sonuç üretebilir.
- Payload biçimine uygun decoder veya Protobuf mesaj tipini seçin.
- Filtreyi mümkün olduğunca dar tutun.
- Taranan ve eşleşen miktarı inceleyin.
- Maskelenmiş veya kesilmiş içeriği orijinal mesaj gibi tekrar yayınlamayın.
Mesaj yayınlama
Yayınlama formunda exchange, routing key, payload, kodlama ve mesaj özellikleri belirlenir. Broker’a başarılı gönderim ile mesajın bir kuyruğa yönlenmesi aynı sonuç değildir; routing/binding koşulları uygun olmalıdır. Yanlış vhost veya routing key ile yayın yapmak beklediğiniz tüketicinin mesajı almasını engelleyebilir.
- Hedef vhost, exchange ve routing key’i doğrulayın.
- Payload ve özellikleri uygulamanın beklediği biçimde hazırlayın.
- Yayınlama yetkisiyle gönderin.
- Routed/unrouted sonucunu ve hedef kuyruğun değişimini kontrol edin.
JSONL dosyasından toplu yayınlama
Toplu yayınlama, konsolun dışa aktardığı JSONL veya desteklenen mesaj satırlarından tekrar yayın yapar. Her mesaj normal yayın kontrolünden geçer. Hız sınırı, duraklatma ve iptal araçları vardır; tamamlanan gönderimler iptal edildiğinde geri çekilmez.
- Dosya yüklendiğinde okunabilen ve atlanan satır sayılarını inceleyin.
- Maskelenmiş veya kesilmiş payload satırları yer tutucu veri göndermemek için atlanır.
- Dosyadaki kendi hedeflerinin mi formdaki ortak exchange/routing key’in mi kullanılacağını seçin.
- Sent, unrouted ve failed sayaçlarını birlikte değerlendirin.
DLQ inceleme, replay ve seçili mesaj silme
Replay seçili mesajları x-death kaynağına, belirli exchange/routing key’e veya kuyruğa aktarabilir. Hedefi, hız sınırını ve dry run sonucunu inceleyin. Sunucu seçimleri mesaj parmak iziyle eşleştirir; bu sırada tüketiciler kuyruktan mesaj aldığı için seçimin gerçek çalışma anındaki sonucu değişebilir.
- Mesajları seçip hedef yönlendirmeyi belirleyin.
- Önce dry run ile beklenen kapsamı inceleyin.
- Gerçek işi başlatıp canlı ilerlemeyi takip edin.
- Pause/resume/cancel sonrası tamamlanan, eşleşmeyen veya hata veren mesajları kontrol edin; tekrar çalıştırmadan önce çoğaltma riskini değerlendirin.
Stream tarama, offset ve canlı takip
Stream tarayıcısı first, last, next, sayısal offset veya timestamp üzerinden okur; kuyruk Get Messages akışından farklıdır. İleri sayfalama offset ile yapılır. Filtreleme tarama bütçesiyle sınırlıdır. Canlı tail hız sınırına sahiptir; aşan olaylar sonsuz kuyrukta tutulmaz, kayıp/overflow sayılır.
- Başlangıç offset veya zamanı belirleyin; retention nedeniyle eski kayıt bulunmayabilir.
- Adet ve tarama bütçesini ayarlayın.
- Canlı takibi gerektiğinde duraklatın; panelin tuttuğu son kayıtlar kalıcı arşiv değildir.
- Stream protokolünün broker tarafında etkin ve ulaşılabilir olması gerekir.
Super stream ve stream istatistikleri
Super stream, birden fazla bölümden oluşan akışı ve yönlendirme ilişkilerini incelemeyi sağlar. Bölüm sayısı ve routing düzeni uygulamanın üretici/tüketici davranışıyla uyumlu olmalıdır. Stream istatistikleri ile klasik kuyruk sayaçları aynı anlama gelmeyebilir.
- Super stream’in bölümlerini ve bağlı kaynaklarını inceleyin.
- Her bölümün offset ve saklama durumunu kontrol edin.
- Yönetim işlemlerinde broker sürümü ve etkin stream özelliklerini doğrulayın.
- Silme veya yeniden oluşturma öncesi uygulamanın bağlantı ve tüketim konumlarını değerlendirin.
Topoloji, kaynak ilişkileri ve arama
Topoloji ekranı exchange, queue ve binding ilişkilerini görselleştirir. Mesajın beklenmeyen kuyruğa gitmesi durumunda yalnızca queue adına değil, tüm yönlendirme zincirine bakın. Büyük broker’larda vhost ve arama filtreleriyle kapsamı daraltın.
- Kaynak exchange’den routing key ve binding üzerinden hedefe ilerleyin.
- Otomatik silinen veya artık bulunmayan kaynakları yenileyerek kontrol edin.
- Haritanın görülmesi ilgili kaynaklarda yazma izni vermez.
- Bağlantı/kanal ekranıyla topolojiyi birlikte kullanarak eksik tüketici ve yanlış binding’i ayırın.
Policy, operator policy ve eşleşme önizlemesi
Policy listesi bir desenin hangi queue/exchange kaynaklarına uygulanacağını anlamak için kullanılır. Priority, apply-to ve definition alanları birlikte sonucu belirler. Operator policy normal policy’den farklı yönetim katmanıdır. Formdaki eşleşme önizlemesi ile sunucudaki gerçek tanımı kontrol edin.
- Policy türü, isim, desen ve önceliği belirleyin.
- Definition JSON’unu beklenen veri türleriyle hazırlayın.
- Eşleşecek kaynakları debugger/önizleme üzerinden inceleyin.
- Kaydettikten sonra hedef kuyruğun etkin argüman/policy bilgisini doğrulayın.
Alarm kuralları ve canlı alarm akışı
Alarm alanı kuralları, değerlendirme sonucunu ve o anda tetiklenen alarmları gösterir. Bildirim rozeti ve toast’lar canlı akıştan güncellenir. Alarm yok görünmesi, ölçüm kaynağının veya bağlantının kesintisiz çalıştığını tek başına göstermez.
- Kuralın metriğini, karşılaştırmasını ve kapsamını kontrol edin.
- Eşiği gerçek kapasite ve tüketim davranışına göre belirleyin.
- Değerlendirme sonucunu inceleyin; yanlış pozitifte önce zaman aralığı ve hedefi doğrulayın.
- Kural değişikliği için gerekli yönetim yetkisi ayrıca uygulanır.
Vhost, kullanıcı, izin ve limit yönetimi
Administration alanında vhost ve kullanıcılar, izinler, topic izinleri ve kaynak limitleri yönetilir. RabbitMQ kullanıcısı ile Battani portal kullanıcısı ayrı kimliklerdir. Yönetim işlemleri bağlantının broker hesabının da uygun yetkisine ihtiyaç duyar.
- Configure, write ve read desenlerinin kapsamını ayrı belirleyin.
- Vhost silmenin o vhost içindeki kaynakları etkileyebileceğini değerlendirin.
- Kullanıcı/bağlantı limitlerini mevcut uygulama ölçeğiyle karşılaştırın.
- İzin değişikliğinden sonra hedef uygulamanın erişimini gerçek bağlantıyla doğrulayın.
Federation ve Shovel
Federation ve Shovel panelleri broker’lar arasındaki mesaj aktarım yapılarını inceler ve yönetir. Bu araçlar ilgili RabbitMQ eklentileri ve uzak hedefe ağ erişimi gerektirir. URI içindeki bağlantı bilgisi, aktarım yönü ve hedef vhost/routing alanlarını dikkatle belirleyin.
- Broker’da gerekli eklentinin bulunduğunu doğrulayın.
- Upstream veya shovel tanımını ve iki uç arasındaki erişimi kontrol edin.
- Durum/hata bilgisinden bağlantı, kimlik ve yönlendirme sorununu ayırın.
- Değişiklik sonrası hem kaynak hem hedef mesaj akışını inceleyin.
Definitions dışa aktarma ve birleştirerek içe aktarma
Definitions dışa aktarımı broker yapılandırmasını taşımak içindir; mesaj payload yedeği değildir. Sunucu kullanıcıların parola hash’lerini boşaltır ve Federation/Shovel URI’lerindeki parolaları maskeler; URI içindeki kullanıcı adları korunur. İçe aktarma önce zorunlu fark önizlemesi sunar ve mevcut tanımlarla birleştirir; bütün sunucuyu dosyaya birebir eşitlemez.
- Added, changed, conflict, server-only ve unchanged durumlarını ayrı inceleyin.
- Dosyada olmayan sunucu kaynaklarının otomatik silineceğini varsaymayın.
- Kapsam/vhost ve ad yazarak onay adımını doğrulayın.
- Kimlik bilgilerinin temizlendiği dışa aktarım, tek başına tüm uzak bağlantıları yeniden kurmaya yetmeyebilir.
Konsol ayarları, maskeleme, şemalar ve favoriler
Konsol ayarları mesaj görüntüleme ve işletim tercihlerini; Protobuf alanı şema dosyaları ve mesaj tiplerini; favoriler sık kullanılan kuyrukları düzenler. Mesaj maskeleme ile payload’ın broker’dan gerçekten silinmesi farklıdır. Gözlem için maskelenen içerik tekrar yayınlamaya uygun olmayabilir.
- Şema seçiminin doğru mesaj tipine karşılık geldiğini kontrol edin.
- Görüntüleme/maskeleme politikasını kullanıcı paylaşımından ayrı değerlendirin.
- Favoriler kaynağın varlığını veya bağlantının erişilebilirliğini garanti etmez.
- Broker yönetim komutları, kaynak ekranındaki yetki ve yazma modu kontrollerinden bağımsız sayılmaz.