GH GambleHub

Log mərkəzləşdirilməsi

1) Niyə log mərkəzləşdirmək

Mərkəzləşdirilmiş qeydlər müşahidə, audit və uyğunluğun təməlidir. Onlar:
  • hadisələrin köklərinin axtarışını sürətləndirir (request-id/trace-id ilə korrelyasiya);
  • simptomlar (səhvlər, anomaliyalar) üzərində siqnal alertləri qurmağa imkan verir;
  • audit izi (kim/nə vaxt/nə etdi);
  • retensiya və saxlama unifikasiyası ilə dəyəri azaldır.

2) Əsas prinsiplər

1. Yalnız strukturlaşdırılmış qeydlər (JSON/RFC5424) - açarları olmayan «free-text» yoxdur.
2. Vahid açar sxemi: 'ts, level, service, env, region, tenant, trace_id, span_id, request_id, user_id (masked), msg, kv...'.
3. Default korrelyasiya: trace_id gateway-dən arxa planlara və girişlərə atın.
4. Minimum səs-küy: düzgün səviyyələr, sampling, təkrarların deduksiyası.
5. Təhlükəsizlik by design: PII-maskalama, RBAC/ABAC, dəyişməzlik.
6. İqtisadiyyat: hot/warm/cold, sıxılma, aqreqasiya, TTL və rehydration.


3) Tipik arxitekturalar

EFK/ELK: (Fluent Bit/Fluentd/Filebeat) → (Kafka — опц.) → (Elasticsearch/OpenSearch) → (Kibana/OpenSearch Dashboards). Universal axtarış və aqreqasiya.
Loki-bənzər (log-indeksasiya etiketləri): Promtail/Fluent Bit → Loki → Grafana. Böyük həcmli, güclü etiket filtri + xətti görünüş üçün daha ucuzdur.
Buludlar: CloudWatch/Cloud Logging/Log Analytics + soyuq saxlama (S3/GCS/ADLS) və/və ya SIEM-ə ixrac.
Data Lake yanaşma: shippers → obyekt saxlama (parquet/iceberg) → ucuz analitik sorğular (Athena/BigQuery/Spark) + son N gün üçün online qat (OpenSearch/Loki).

Tövsiyə: Prod-onkoll üçün onlayn təbəqə (7-14 gün hot) və arxiv (ay/illər) rehydrate imkanı ilə lake saxlayın.


4) Log sxemi və formatı (tövsiyə)

Minimum JSON formatı:
json
{
"ts":"2025-11-01T13:45:12.345Z",
"level":"ERROR",
"service":"payments-api",
"env":"prod",
"region":"eu-central",
"tenant":"tr",
"trace_id":"0af7651916cd43dd8448eb211c80319c",
"span_id":"b7ad6b7169203331",
"request_id":"r-7f2c",
"user_id":"",        // masked
"route":"/v1/payments/charge",
"code":"PSP_TIMEOUT",
"latency_ms":1200,
"msg":"upstream PSP timeout",
"kv":{"provider":"psp-a","attempt":2,"timeout_ms":800}
}

Standartlar: vaxt üçün RFC3339, 'TRACE/DEBUG/INFO/WARN/ERROR/FATAL' dəstindən level, snake_case açarları.


5) Log səviyyələri və sampling

DEBUG - yalnız dev/stage; bayraq və TTL ilə prod.
INFO - sorğuların/hadisələrin həyat dövrü.
WARN - SLO-ya təsir etmədən şübhəli hallar.
ERROR/FATAL - sorğuya/istifadəçiyə təsir.

Sampling:
  • təkrar səhvlər üçün rate-limit (məsələn, 1/san/açar).
  • tail-sampling yolları (yalnız «pis» sorğular üçün tam giriş/treys buraxın).
  • dinamik: səhvlər fırtınasında detalları azaltmaq, birləşdirilmiş saxlamaq.

6) Logların çatdırılması (agentlər və şipperlər)

Node: Fluent Bit/Filebeat/Promtail stdout faylları/jurnalları toplayır, parsing, maskalama, bufer edir.
Şəbəkə növbələri: Kafka/NATS pik, retraj və nizamlama üçün.
Etibarlılıq: backpressure, disk buferləri, çatdırılma təsdiqləri (at-least-once), idempotent indeksləri (açar-hash).
Kənarda filtrasiya: şəbəkəyə girməmişdən əvvəl «söhbət» və sirlərin atılması.


7) Indeksasiya və saxlama

Partisioning time (daily/weekly) + po 'env/region/tenant' (indeks-şablon və ya etiket vasitəsilə).

Saxlama qatları:
  • Hot (SSD, 3-14 gün): sürətli axtarış və alert.
  • Warm (HDD/dondurucu, 30-90 gün): bəzən axtarırıq.
  • Cold/Archive (obyekt, ay/illər): uyğunluq və nadir araşdırmalar.
  • Sıxılma və rotasiya: ILM/ISM (həyat dövrü siyasəti), gzip/zstd, downsampling (aqreqasiya cədvəlləri).
  • Rehydration: araşdırma üçün «isti» klasterə arxiv hissələrinin müvəqqəti yüklənməsi.

8) Axtarış və analitika: tipik sorğular

Hadisə: × 'service =...' × 'level> = ERROR' × 'trace _ id '/' request _ id'.
Provayderlər: 'code: PSP _' və 'kv. provider: psp-a 's bölgə qruplaşması ilə.
Anomaliyalar: mesajların tezliyinin artması və ya sahələrin paylanmasının dəyişdirilməsi (ML-detektorlar, rule-based).
Audit: 'category: audit' + 'actor '/' resource' + nəticə.


9) Metrlər və izlər ilə korrelyasiya

Eyni identifikatorlar: hər üç siqnalda 'trace _ id/span _ id' (metriklər, qeydlər, treyslər).
Qrafik linkləri: p99 panelindən 'trace _ id' loqlarına klikabel keçid.
Relizlərin şərhləri: sürətli bağlama üçün metrik və log versiyaları/kanaryalar.


10) Təhlükəsizlik, PII və komplayens

Sahələrin təsnifatı: PII/Secrets/Finance - girişdə maskalamaq və ya silmək (Fluent Bit/Lua filtrləri, Re2).
RBAC/ABAC: rollar üzrə indekslərə/etiketlərə giriş, row-/field-level-security.
Audit və tənzimləyicilərin tələbləri üçün dəyişməzlik (WORM/append-only).
Retence və «unudulmaq hüququ»: TTL/açar silinməsi, 'user _ id' tokenizasiyası.
İmzalar/Hash: Kritik jurnalların bütövlüyü (inzibati fəaliyyət, ödənişlər).


11) SLO və Paypline Loads Metrics

Çatdırılma: 99. 9% isti təbəqə hadisələri ≤ 30-60 san.
Zərər: <0. 24 saat ərzində 01% (nəzarət nişanları üzrə).
Axtarış mövcudluğu: ≥ 99. 28 gün ərzində 9%.
Sorğuların gecikməsi: p95 ≤ 2-5 saniyə standart filtrlərdə.
Dəyəri: $/1M hadisə və $/depolama/GB qat.


12) Daşbordlar (minimum)

Paypline sağlamlığı: giriş/çıxış şipperləri, retralar, buferlərin doldurulması, lag Kafka.
Services/kodlar üzrə səhvlər: Top-N, trendlər, persentili 'latency _ ms'.
Audit fəaliyyəti: inzibati hərəkətlər, provayder səhvləri, girişlər.
İqtisadiyyat: həcm/gün, indeks-artım, qat-qat dəyəri, «bahalı» sorğular.


13) Əməliyyat və playbook

Fırtına Log: Agressive sampling/rate-limit agent, bufer qaldırmaq, müvəqqəti warm axını bir hissəsi köçürmək.
Drift sxemləri: yeni açarların/tiplərin görünüşü, sxemlərin koordinasiyasının başlaması (schema-catalog).
Yavaş axtarış: indekslərin yenidən yığılması, replikaların artırılması, «ağır» sorğuların təhlili, köhnə partiyaların arxivləşdirilməsi.
Təhlükəsizlik hadisəsi: dəyişməzliyin dərhal aktivləşdirilməsi, artefaktların boşaldılması, rollara girişin məhdudlaşdırılması, RCA.


14) FinOps: qovuqlarda iflas etməmək üçün necə

Verbozluğu aradan qaldırın: çox sətirli stacktrace-i 'stack' sahəsinə çevirin və təkrarları sample edin.
TTL daxil edin: 'env '/' level '/' category' üçün fərqlidir.
Nadir giriş üçün Loki/Arxiv + on-demand rehydrate istifadə edin.
Partizan və sıxılma: böyük partizanlar daha ucuzdur, lakin SLA axtarışını izləyin.
Tez-tez analitik hesabatları (gündəlik aqreqatlar) materiallaşdırın.


15) Alət nümunələri

Fluent Bit (maskalanma və OpenSearch göndərilməsi)

ini
[INPUT]
Name       tail
Path       /var/log/app/.log
Parser      json
Mem_Buf_Limit   256MB

[FILTER]
Name       modify
Match
Remove_key    credit_card, password

[OUTPUT]
Name       es
Host       opensearch.svc
Port       9200
Index       logs-${tag}-${date}
Logstash_Format  On
Suppress_Type_Name On

Nginx access log в JSON с trace_id

nginx log_format json escape=json '{ "ts":"$time_iso8601","remote":"$remote_addr",'
'"method":"$request_method","path":"$uri","status":$status,'
'"bytes":$body_bytes_sent,"ua":"$http_user_agent","trace_id":"$http_trace_id"}';
access_log /var/log/nginx/access.json json;

OpenSearch ILM siyasəti (hot → warm → delete)

json
{
"policy": {
"phases": {
"hot":  { "actions": { "rollover": { "max_age": "7d", "max_size": "50gb" } } },
"warm": { "min_age": "7d", "actions": { "forcemerge": { "max_num_segments": 1 } } },
"delete":{ "min_age": "90d", "actions": { "delete": {} } }
}
}
}

16) Giriş çek siyahısı

  • Sahə sxemi və log səviyyələri qəbul edilmişdir; trace/request-id korrelyasiyası aktivdir.
  • Maskalanma və tamponlar ilə xüsusi agentlər (Fluent Bit/Promtail).
  • Online qat (OpenSearch/Loki/bulud) və arxiv (S3/GCS + parquet) seçilmişdir.
  • ILM/ISM + hot/warm/cold retention siyasəti, rehydrate prosesi.
  • RBAC/ABAC, audit üçün dəyişməzlik, giriş jurnalı.
  • Paypline Dashboard, itki/lag/disk buferləri üçün həyəcan.
  • Playbook: fırtına yuvaları, sürüklənmə sxemləri, yavaş axtarış, təhlükəsizlik hadisəsi.
  • Maliyyə limitləri: $/1M hadisələr, «bahalı» sorğular üçün kvotalar.

17) Anti-nümunələr

Struktursuz mətn qeydləri → süzülmək və yığmaq mümkün deyil.
INFO → həcmi partlayış nəhəng stacktrace.
Korrelyasiya yoxdur → Bütün xidmətlər üzrə «çırpma».
Saxlama «hər zaman» → təyyarə kimi bulud hesab.
Sirləri/PII log → komplayens riskləri.
Prod → sürüklənmə və uzun axtarış fasilələrində indekslərin əl ilə düzəlişləri.


18) Yekun

Log mərkəzləşdirilməsi sadəcə yığın deyil, sistemdir. Standartlaşdırılmış sxem, korrelyasiya, təhlükəsiz şipperlər, qat-qat saxlama və ciddi giriş siyasəti loqləri SRE, təhlükəsizlik və məhsul üçün güclü bir vasitəyə çevirir. Düzgün retansiyalar və FinOps büdcəni saxlayır və SLO payplayns və playbukları araşdırmaları sürətli və təkrarlanabilir edir.

Contact

Bizimlə əlaqə

Hər hansı sualınız və ya dəstək ehtiyacınız varsa — bizimlə əlaqə saxlayın.Həmişə köməyə hazırıq!

İnteqrasiyaya başla

Email — məcburidir. Telegram və ya WhatsApp — istəyə bağlıdır.

Adınız istəyə bağlı
Email istəyə bağlı
Mövzu istəyə bağlı
Mesaj istəyə bağlı
Telegram istəyə bağlı
@
Əgər Telegram daxil etsəniz — Email ilə yanaşı orada da cavab verəcəyik.
WhatsApp istəyə bağlı
Format: ölkə kodu + nömrə (məsələn, +994XXXXXXXXX).

Düyməyə basmaqla məlumatların işlənməsinə razılıq vermiş olursunuz.