TR7 JSON Format (L7 TCP)
Format Hakkında
TR7 JSON Format, L7 TCP vService'ler için en kapsamlı log formatıdır. Profil formundaki Line Format listesinde TR7 JSON Format seçeneğiyle yer alır. Bağlantı bilgileri, zamanlama metrikleri ve SSL/TLS detaylarını yapılandırılmış JSON formatında sunar.
HTTP JSON formatından farklı olarak TCP JSON formatı, istek/yanıt içeriği yerine bağlantı seviyesinde detaylar sağlar. WAF bilgileri TCP için desteklenmez.
Kullanım senaryoları
- Detaylı bağlantı analizi.
- Elasticsearch/Kibana entegrasyonu.
- Performans izleme ve optimizasyon.
- SSL/TLS güvenlik analizi.
Desteklenen Özellikler
Örnek Log
{
"pool": "LOGTEST-T",
"ident": "tr7",
"ts": "09/Sep/2026:20:51:45 +0300",
"time": {
"tw": "5",
"tc": "0",
"tt": "6088"
},
"conn": {
"act": "1",
"f": "1",
"b": "0",
"s": "0"
},
"queue": {
"b": "0",
"s": "0"
},
"tstate": "cD",
"retries": "0",
"network": {
"ci": "172.16.101.42",
"cp": "50069",
"fi": "172.16.102.85",
"fp": "8080",
"si": "172.16.102.168",
"sp": "80"
},
"ssl": {
"fAlgKeysize": "128",
"fCipher": "TLS_AES_128_GCM_SHA256",
"fProtocol": "TLSv1.3",
"fNpn": "-",
"fAlpn": "http/1.1",
"fKeyAlg": "rsaEncryption",
"fSigAlg": "RSA-SHA256",
"fVersion": "3",
"fNotAfter": "240507115021Z",
"fNotBefore": "230508115021Z",
"fClientDn": "/C=TR/ST=ANK/L=ANK/O=TR7/OU=TR7/CN=new.tr7.com",
"fIssuerDn": "/C=TR/ST=ANK/L=ANK/O=TR7/OU=TR7/CN=new.tr7.com",
"sAlgKeysize": "-",
"sCipher": "-",
"sProtocol": "-",
"sNpn": "-",
"sAlpn": "-",
"sKeyAlg": "-",
"sSigAlg": "-",
"sVersion": "-",
"sNotAfter": "-",
"sNotBefore": "-",
"sClientDn": "-",
"sIssuerDn": "-"
},
"ids": {
"p": "lbPools-mtue68on__lb",
"b": "DBE",
"f": "DFE~",
"s": "lbBackends-mrdk4wpm"
},
"bytes": {
"uploaded": "4914",
"read": "7552"
}
}Alan Açıklamaları
Temel Alanlar
| Alan | Örnek | Açıklama |
|---|---|---|
pool | LOGTEST-T | vService adı |
ident | tr7 | Log kaynağı tanımlayıcısı |
ts | 09/Sep/2026:20:51:45 +0300 | Zaman damgası (cihazın yerel saati) |
time (Zamanlama Metrikleri)
| Alan | Birim | Açıklama |
|---|---|---|
tw | ms | Wait Time: kuyrukta bekleme süresi |
tc | ms | Connect Time: Kurum Servisine bağlanma süresi |
tt | ms | Total Time: toplam bağlantı süresi |
INFO
HTTP formatına göre eksik olan alanlar yalnızca bunlar değildir: time nesnesinde tq ve tr, üst düzeyde ise username, request, response, resFrom, isWafAttack ve wafInfo alanları TCP'de bulunmaz. Ayrıca tstate HTTP'de dört, TCP'de iki karakterdir (çerez durumu taşınmaz).
conn (Bağlantı Sayaçları)
| Alan | Açıklama |
|---|---|
act | Aktif bağlantı sayısı |
f | Frontend bağlantı sayısı |
b | Backend bağlantı sayısı |
s | Server bağlantı sayısı |
queue (Kuyruk Durumu)
| Alan | Açıklama |
|---|---|
b | Backend kuyruğundaki bağlantı sayısı |
s | Server kuyruğundaki bağlantı sayısı |
tstate (Bağlantı Sonlandırma Durumu)
2 karakterlik bağlantı sonlandırma kodu:
| Değer | Anlam |
|---|---|
-- | Normal tamamlanma |
cD | Veri aşamasında istemci tarafı zaman aşımı |
sD | Veri aşamasında sunucu tarafı zaman aşımı |
CD | Veri aşamasında istemci bağlantıyı kesti |
SD | Veri aşamasında sunucu bağlantıyı kesti |
İlk karakter sonlanma nedenini, ikinci karakter sonlanma anındaki aşamayı gösterir; kodların tam listesi Standard (L7 TCP) sayfasında yer alır.
retries
| Alan | Açıklama |
|---|---|
retries | Backend bağlantı yeniden deneme sayısı |
network (Ağ Bilgileri)
| Alan | Örnek | Açıklama |
|---|---|---|
ci | 172.16.101.42 | İstemci IP adresi |
cp | 50069 | İstemci kaynak portu |
fi | 172.16.102.85 | Frontend (vService) IP adresi |
fp | 8080 | Frontend port |
si | 172.16.102.168 | Kurum Servisi IP adresi |
sp | 80 | Kurum Servisi portu |
ssl Nesnesi: Frontend SSL/TLS Bilgileri
| Alan | Örnek | Açıklama |
|---|---|---|
fAlgKeysize | 128 | Şifreleme anahtar boyutu (bit) |
fCipher | TLS_AES_128_GCM_SHA256 | Cipher suite |
fProtocol | TLSv1.3 | TLS protokol versiyonu |
fNpn | - | NPN protokolü |
fAlpn | http/1.1 | ALPN protokolü |
fKeyAlg | rsaEncryption | Anahtar algoritması |
fSigAlg | RSA-SHA256 | İmza algoritması |
fVersion | 3 | Sertifika versiyonu |
fNotAfter | 240507115021Z | Sertifika bitiş tarihi |
fNotBefore | 230508115021Z | Sertifika başlangıç tarihi |
fClientDn | /C=TR/ST=ANK/L=ANK/O=TR7/OU=TR7/CN=new.tr7.com | Sertifika subject DN |
fIssuerDn | /C=TR/ST=ANK/L=ANK/O=TR7/OU=TR7/CN=new.tr7.com | Sertifika issuer DN |
ssl Nesnesi: Kurum Servisi SSL/TLS Bilgileri
| Alan | Açıklama |
|---|---|
sAlgKeysize | Anahtar boyutu (bit) |
sCipher | Cipher suite |
sProtocol | TLS protokol versiyonu |
sNpn | NPN protokolü |
sAlpn | ALPN protokolü |
sKeyAlg | Anahtar algoritması |
sSigAlg | İmza algoritması |
sVersion | Sertifika versiyonu |
sNotAfter | Sertifika bitiş tarihi |
sNotBefore | Sertifika başlangıç tarihi |
sClientDn | Sertifika subject DN |
sIssuerDn | Sertifika issuer DN |
INFO
Kurum Servisine şifresiz bağlanıldığında tüm s* alanları - değerini alır; yukarıdaki örnek log bu durumdadır.
ids (Tanımlayıcılar)
| Alan | Örnek | Açıklama |
|---|---|---|
p | lbPools-mtue68on__lb | Yük dengeleme konteynerinin adı: <vService ID>__lb. Ham vService ID bu değerin __lb soneki atılmış hâlidir. |
b | DBE | Backend tanımlayıcısı |
f | DFE~ | Frontend tanımlayıcısı. Sondaki ~ işareti bağlantının TLS ile sonlandırıldığını gösterir; şifresiz bir frontend'de DFE olarak yazılır. |
s | lbBackends-mrdk4wpm | Kurum Servisi ID |
bytes (Veri Transferi)
| Alan | Örnek | Açıklama |
|---|---|---|
uploaded | 4914 | İstemciden alınan byte |
read | 7552 | İstemciye gönderilen byte |
Kullanım Örneği: Performans Analizi
Yavaş Bağlantıları Bulma
Örnekler ham log satırı varsayar
Aşağıdaki komutlar, dosyanın ham log satırlarından oluştuğunu varsayar. Log profilinde Log Standard olarak local (varsayılan), rfc3164, rfc5424 ya da priority seçiliyse her satırın başına syslog öneki eklenir; alan indeksleri kayar, JSON satırları ise ayrıştırılamaz. Bu durumda ya toplayıcının öneki ayıklaması ya da profilde raw seçilmesi gerekir.
# Total time > 5 saniye
cat tcp.log | jq 'select((.time.tt | tonumber) > 5000)'Bağlantı Hata Oranı
# Normal olmayan sonlandırmaları say
cat tcp.log | jq -r '.tstate' | grep -v "^--$" | wc -lINFO
cD (istemci boşta kalıp zaman aşımına takıldı) uzun ömürlü bağlantılarda olağan bir sonlanmadır ve bu sayımda hata gibi görünür. Gerçek bağlantı hataları için SC ve sC kodları ayrıca süzülmelidir.
Kurum Servisi Dağılımı
# Kurum Servisi bazında bağlantı sayısı
cat tcp.log | jq -r '.network.si' | sort | uniq -c | sort -rnSSL Protokol Dağılımı
# Kullanılan TLS versiyonları
cat tcp.log | jq -r '.ssl.fProtocol' | sort | uniq -c