Nginx Kurulumu ve Rabisıu Functions için Harici Loglama
Bu rehberde, Rabisıu Functions üzerinde çalışan uygulamalar için harici loglama sistemini kurmayı öğreneceksiniz.
Papertrail entegrasyonu sayesinde hataları hızlı tespit edecek ve sisteminizi merkezi olarak izleyeceksiniz.
📌 Teknik Özet
Bu içerik, serverless uygulamalarda harici log servisi kurulumunu anlatır.
Amaç, uygulama günlüklerini güvenli şekilde saklamak ve analiz etmektir.
İzlenen adımlar:
- Papertrail entegrasyonu
- Token oluşturma
- Ortam değişkeni tanımlama
- Yapılandırma güncelleme
- Log doğrulama
🚀 Bu Rehberde Ne Öğreneceksiniz?
- Papertrail kurulumu
- Token tabanlı bağlantı
- project.yml yapılandırması
- Log test yöntemleri
- Sorun giderme adımları
🛠️ Gereksinimler
Başlamadan önce:
- Aktif Rabisu hesabı
- Yayında bir fonksiyon projesi
- Papertrail hesabı
.envveproject.ymldosyaları
✅ Adım 1: Papertrail Servisini Aktif Etme
- Rabisu paneline giriş yapın.
- SaaS Add-ons bölümüne gidin.
- Papertrail’i bulun.
- Add Papertrail seçeneğine tıklayın.
- Ücretsiz paketi seçin.
Bu işlem log servisinin hesabınıza bağlanmasını sağlar.
✅ Adım 2: Token ile Log Hedefi Oluşturma
- Papertrail paneline giriş yapın.
- Settings > Log Destinations bölümüne gidin.
- New Destination seçeneğine tıklayın.
Ayarlar:
- Destination Name:
dogum-gunu-loglari - Accept via: Token
- HTTPS: Açık
Oluşturulan token’ı kopyalayın.
✅ Adım 3: Ortam Değişkenlerini Tanımlama
.env dosyasına token ekleyin.
Bu satır API anahtarını tanımlar.
PAPERTRAIL_API_TOKEN=ornek_token_degeri
✅ Adım 4: project.yml Dosyasını Güncelleme
- Bu yapılandırma log yönlendirmesini sağlar.
packages:
- name: hatirlatici
shared: false
environment:
DB_NAME: "${DB_NAME}"
DB_USER: "${DB_USER}"
DB_PASSWORD: "${DB_PASSWORD}"
DB_HOST: "${DB_HOST}"
DB_PORT: "${DB_PORT}"
LOG_DESTINATIONS: '[{"papertrail":{"token":"${PAPERTRAIL_API_TOKEN}"}}]'
functions:
- name: dogumgunleri
runtime: python:default
✅ Adım 5: Uygulamayı Yeniden Dağıtma
- Bu komut projeyi tekrar yayınlar.
doctl serverless deploy tr1-birthday-service
- Komutu ana dizinden çalıştırın.
✅ Adım 6: Logları Test Etme
🔹 Curl ile Test
- Bu komut manuel log gönderir.
curl -u :ornek_token \
-H "Content-Type: application/json" \
-d '{"mesaj":"Rabisu Bulut test logu"}' \
https://logs.collector.solarwinds.com/v1/log
- Panelde mesaj görünmelidir.
🔹 Fonksiyon Testi
- Bu komut fonksiyonu tetikler.
doctl serverless activations invoke hatirlatici/dogumgunleri
- Başarılıysa loglar panelde görünür.
🧩 Sorun Giderme
Log görünmüyorsa:
-
Token doğruluğunu kontrol edin.
-
LOG_DESTINATIONS alanını inceleyin.
-
Kodda log üretildiğinden emin olun.
-
Yeniden deploy yapın.
Örnek Log Kodu
- Bu kod log üretir.
import logging
logging.basicConfig(level=logging.INFO)
def main(params):
logging.info("Fonksiyon çalıştı.")
print("İşlem tamamlandı.")
❓ Sıkça Sorulan Sorular
1. Papertrail zorunlu mu? Hayır. BetterStack ve DataDog da kullanılabilir.
2. Ücretsiz paket yeterli mi? Küçük projeler için genelde yeterlidir.
3. Loglar güvenli mi? Token sistemi sayesinde güvenlidir.
4. Performansı etkiler mi? Doğru yapılandırmada etkilemez.
5. Geçmiş loglara erişebilir miyim? Evet, panelden filtreleme yapılabilir.
🎯 Sonuç
Bu rehberle: Harici loglama kurdunuz. Merkezi izleme sağladınız. Hata takibini kolaylaştırdınız. Sistem güvenilirliğini artırdınız.
Rabisu Bulut altyapısıyla bu sistemi hemen kullanabilir, projelerinizi profesyonel seviyeye taşıyabilirsiniz. 🚀