Konnektör
Konnektör Özellikleri
15+ farklı konnektör türü mevcuttur
Form tabanlı yapılandırma, kod yazmaya gerek yok
Konnektörler birden fazla Task Flow'da ve farklı alanlarda kullanılabilir
Konnektörler farklı senaryolara uygun şekilde yapılandırılabilir
Konnektör Kullanım Akışı
Aşağıdaki diyagram, konnektörlerin API Proxy ve Task Flow'larda nasıl kullanıldığını gösterir:
sequenceDiagram
participant Client as 👤 İstemci
participant Gateway as 🚪 API Gateway
participant Proxy as 🔀 API Proxy/Task Flow
participant Connector as 🔌 Konnektör
participant Connection as 🔗 Bağlantı
participant ExternalSystem as 🖥️ Dış Sistem
Client->>Gateway: HTTP İsteği
Note over Gateway: İstek Gateway'e Ulaştı
Gateway->>Proxy: İsteği API Proxy/Task Flow'a Yönlendir
Note over Proxy: İşleme Başladı
Proxy->>Connector: Konnektör Çağrılır<br/>(Form Tabanlı Yapılandırma)
Note over Connector: Konnektör Türleri:<br/>Database, Kafka, RabbitMQ,<br/>Email, HTTP, FTP,<br/>Elasticsearch, Script, vb.
Connector->>Connection: Bağlantı Kullanımı<br/>(Merkezi Yapılandırma)
Note over Connection: Bağlantı Bilgileri<br/>(Host, Port, Credentials)
Connection->>ExternalSystem: Dış Sisteme Bağlantı<br/>Kurulur (SSL/TLS)
Note over ExternalSystem: Dış Sistem Türleri:<br/>Veritabanı (MySQL, PostgreSQL, MongoDB)<br/>Mesaj Kuyruğu (Kafka, RabbitMQ, ActiveMQ)<br/>E-posta (SMTP)<br/>Dosya (FTP/SFTP)<br/>Arama (Elasticsearch)<br/>HTTP/REST API
alt Veri Okuma Senaryosu
ExternalSystem->>Connection: Veri Döner
Connection->>Connector: Bağlantı Sonucu
Connector->>Connector: Veri Dönüşümü<br/>(JSON ↔ XML, Mapping)
Connector->>Proxy: İşlenmiş Veri
else Veri Yazma Senaryosu
Connector->>Connection: Veri Gönderilir
Connection->>ExternalSystem: Veri İletilir
ExternalSystem->>Connection: İşlem Sonucu
Connection->>Connector: Başarı/Hata Durumu
Connector->>Proxy: İşlem Sonucu
else Protokol Dönüşümü Senaryosu<br/>(Connector API Proxy)
Connector->>Connection: HTTP → MQTT/Kafka<br/>Protokol Dönüşümü
Connection->>ExternalSystem: Dönüştürülmüş Mesaj
ExternalSystem->>Connection: Onay
Connection->>Connector: Dönüşüm Tamamlandı
Connector->>Proxy: Başarı Durumu
end
Proxy->>Gateway: İşlenmiş Yanıt
Gateway->>Client: HTTP Yanıtı
Note over Client,Gateway: İşlem Tamamlandı
Note over Connector,ExternalSystem: Konnektörler Yeniden<br/>Kullanılabilir ve<br/>Birden Fazla Senaryoda<br/>Kullanılabilir
Konnektör Türleri
Veritabanı Konnektörleri
SQL veritabanlarına bağlantı (MySQL, PostgreSQL, Oracle, MSSQL, DB2)
Veritabanı bağlantıları kullanılarak SQL sorguları çalıştırılabilir ve veritabanı işlemleri gerçekleştirilebilir.
Mesaj Kuyruğu Konnektörleri
Apache Kafka entegrasyonu
Mesaj kuyruğuna mesaj gönderme işlemleri. Event-driven mimariler için mesaj yayınlama.
RabbitMQ entegrasyonu
Mesaj kuyruğuna mesaj gönderme ve asenkron mesajlaşma işlemleri.
Apache ActiveMQ entegrasyonu
Mesaj broker'a mesaj gönderme ve mesaj kuyruğu yönetimi.
İletişim Konnektörleri
E-posta gönderme
SMTP sunucu yapılandırması ile e-posta gönderme ve bildirim işlemleri.
HTTP/REST API çağrıları
REST API'ler ile iletişim kurma ve HTTP istekleri gönderme/alma.
Webhook gönderme
Webhook dinleme, gönderme ve event-driven işlemler gerçekleştirme.
Dosya ve Veri Konnektörleri
FTP/SFTP dosya transferi
FTP bağlantıları kullanarak dosya okuma, listeleme ve transfer işlemleri.
Elasticsearch sorguları
Elasticsearch bağlantıları ile veri indeksleme, arama sorguları ve analitik işlemler.
JavaScript/Groovy script çalıştırma
Groovy veya JavaScript kullanarak programatik işlemler ve özel iş mantığı ekleme.
Monitoring ve Bildirim Konnektörleri
Bildirim gönderme
İş tanımları çalıştığında kullanıcılara bildirim gönderme ve bildirim yönetimi.
SNMP trap gönderme
SNMP protokolü ile trap gönderme ve network monitoring işlemleri.
Syslog mesajları gönderme
Syslog protokolü ile log mesajları gönderme ve merkezi loglama.
Log kayıtları gönderme
Logback framework'ü ile log kayıtları gönderme ve log yönetimi.
Sistem Konnektörleri
Linux komutları çalıştırma
SSH üzerinden uzak Linux sunucularında komut ve betik çalıştırma.
Elasticsearch Konnektörü özellikle önemlidir. Apinizer Yönetim Konsolunda API Trafiğinin sorgulanması ve analitik olarak görselleştirilmesi ancak ilgili ortama Elasticsearch Konnektörü eklenmesi ile mümkün olmaktadır.
Konnektör Kullanım Alanları
Konnektörler Apinizer platformunda dört ana alanda kullanılır:
Task Flow'larda farklı sistemlere bağlantı kurulur ve veri alışverişi sağlanır. Konnektörler görsel olarak bağlanarak entegrasyon senaryoları oluşturulur.
Konnektörler ile API Proxy oluşturulabilir. Bu sayede HTTP to MQTT gibi protokol dönüşümü sağlanır. Örneğin HTTP protokolü ile mesaj kuyruğuna veri bırakılabilir.
Alarmlar, monitoring ve anomaly detection durumlarının oluşması durumunda action çalıştırırken kullanılır. Hata durumlarında bildirim gönderme, log kaydetme gibi işlemler gerçekleştirilir.
API trafiğinin logunun başka sistemlere gönderilebilmesi için kullanılır. Elasticsearch, Graylog, Syslog gibi loglama sistemlerine log gönderimi yapılır.
Kullanım Senaryoları
Konnektörler çeşitli entegrasyon senaryolarında kullanılabilir:
Kaynak sistemden veri çekme (Database Connector), veri dönüştürme ve hedef sisteme gönderme (HTTP Connector)
İşlem sonuçlarını mesaj kuyruğuna gönderme (Kafka/RabbitMQ/ActiveMQ Connector) ve event yayınlama
FTP'den dosya alma (FTP Connector), parse etme (Script Connector) ve veritabanına kaydetme (Database Connector)
Alarm ve monitoring durumlarında e-posta gönderme (Email Connector) ve log kaydetme (Logback/Syslog Connector)
API trafik loglarını Elasticsearch, Graylog gibi sistemlere gönderme (Elasticsearch/Graylog Connector)
HTTP to MQTT gibi protokol dönüşümü sağlama. HTTP protokolü ile mesaj kuyruğuna veri bırakma (Connector API Proxy)
Konnektör Yapılandırması
Konnektörler yapılandırılırken şu bilgiler tanımlanır:
Bağlantı Seçimi
Konnektörün kullanacağı bağlantı (Connection) seçilir. Bağlantı daha önce tanımlanmış olmalıdır.
Parametreler
Konnektör türüne göre farklı parametreler tanımlanır:
- Veritabanı konnektörleri için SQL sorguları
- HTTP konnektörleri için URL, method, header'lar
- E-posta konnektörleri için alıcı, konu, içerik
Veri Dönüşümü
Bazı konnektörler veri dönüşümü yapabilir:
- JSON ↔ XML dönüşümü
- Veri mapping ve transformation
- Format dönüşümleri
Hata Yönetimi
Konnektörler hata durumlarını yönetebilir:
- Retry mekanizması
- Error handling
- Fallback stratejileri