| Şablon türünü seçin: | İstemci şablonları Sunucu şablonları |
Aşağıdaki sunucu ortamlarını kullanan Remote Config uygulamalarına (Cloud Run ve Cloud Functions for Firebase dahil) sunucuya özel şablonlardan Remote Config parametreleri ve değerleri yayınlayabilirsiniz:
- Firebase Admin Node.js SDK'sı v12.1.0 veya sonraki sürümler
- Firebase Admin Python SDK'sı v6.7.0 veya sonraki sürümler
- Firebase Admin Go SDK'sı v4.17.0+
- Firebase Admin Java SDK'sı v9.7.0 veya sonraki sürümler
Firebase konsolunu veya Remote Config arka uç API'lerini kullanırken bir veya daha fazla parametre (anahtar/değer çiftleri) tanımlar ve sunucu kodunuzda bu parametreler için varsayılan değerler sağlarsınız. Remote Config şablonunda parametre değerlerini tanımlayarak varsayılan değerleri geçersiz kılabilirsiniz. Parametre anahtarları ve parametre değerleri dizelerdir ancak bu değerleri uygulamanızda kullandığınızda parametre değerleri diğer veri türleri olarak yayınlanabilir.
Firebase konsolunu, Admin SDK veya Remote Config REST API'yi kullanarak parametreleriniz için yeni varsayılan değerler ve istemci istekleri gruplarını hedeflemek için kullanılan koşullu değerler oluşturabilirsiniz. Firebase konsolunda yapılandırmanızı her güncellediğinizde Firebase, Remote Config şablonunuzun yeni bir sürümünü oluşturup yayınlar. Önceki sürüm depolanır. Böylece, gerektiğinde önceki sürümü alabilir veya geri yükleyebilirsiniz. Bu işlemler Firebase konsolunda, Firebase Admin SDK'de ve REST API'de kullanılabilir. Bu işlemler Remote Config şablon sürümlerini yönetme başlıklı makalede daha ayrıntılı olarak açıklanmıştır.
Bu kılavuzda parametreler, koşullar, kurallar, koşullu değerler ve çeşitli parametre değerlerinin Remote Config arka ucunda ve sunucu uygulamanızda nasıl önceliklendirildiği açıklanmaktadır. Ayrıca, koşul oluşturmak için kullanılan kural türleri hakkında ayrıntılı bilgi verilmektedir.
Koşullar, kurallar ve koşullu değerler
Bir koşul, bir grup istemci isteğini hedeflemek için kullanılır. Koşullar, bir istemci isteği için koşulun true olarak değerlendirilmesi amacıyla tümünün true olarak değerlendirilmesi gereken bir veya daha fazla kuraldan oluşur. Bir kuralın değeri tanımlanmamışsa (örneğin, değer yoksa) bu kural false olarak değerlendirilir.
Örneğin, büyük dil modeli (LLM) adını ve sürüm dizesini tanımlayan bir parametre oluşturabilir ve özel sinyal kurallarına göre farklı modellerden yanıtlar sunabilirsiniz. Bu kullanım alanında, çoğu isteğe hizmet vermek için varsayılan değer olarak kararlı bir model sürümü kullanabilir ve test istemcisi isteklerine yanıt vermek için deneysel bir model kullanmak üzere özel sinyali kullanabilirsiniz.
Bir parametre, farklı koşullar kullanan birden fazla koşullu değere sahip olabilir ve parametreler, bir proje içinde koşulları paylaşabilir. Firebase konsolunda, her parametrenin koşullu değerleri için getirme yüzdesini görüntülemek üzere DevOps & Engagement > Remote Config > Parametreler sayfasına gidin. Bu metrik, son 24 saat içinde her bir değeri alan isteklerin yüzdesini gösterir.
Firebase konsolunu kullanarak koşul ekleme, düzenleme, yeniden sıralama veya silme
Firebase konsolunda hedefleme koşulları oluşturabilir, düzenleyebilir, yeniden sıralayabilir ve silebilirsiniz. Koşullar, bir projedeki parametreler arasında paylaşılır. Koşulları nasıl yöneteceğiniz aşağıda açıklanmıştır:
- Firebase konsolunda DevOps & Engagement (DevOps ve Etkileşim) > Remote Config > Koşullar sayfasına gidin (veya Parametreler sayfasından Koşulları yönet'i seçin).
- Koşul ekleme: Koşul ekle'yi (veya İlk koşulunuzu oluşturun) tıklayın, hedefleme amacını tanımlayan bir ad girin ve bir veya daha fazla hedefleme kuralı seçin.
- Koşulu düzenleme: Koşul adını veya düzenleme simgesini tıklayın, kuralları gerektiği şekilde değiştirin ve Kaydet'i tıklayın.
- Koşul önceliğini değiştirme: Koşullar sayfasında, koşulları tutma yerlerinden sürükleyerek yeniden sıralayın. Listenin üst kısımlarında yer alan koşullar, listenin alt kısımlarında yer alan koşullara göre önceliklidir.
- Koşul silme: Kaldırmak istediğiniz koşulun yanındaki silme simgesini tıklayın. Koşula herhangi bir parametre tarafından referans veriliyorsa koşulun kaldırılması, ilişkili koşullu değerleri de kaldırır.
Koşul değişikliklerinizi kaydettikten sonra Değişiklikleri yayınla'yı kullanarak şablonunuzu yayınlayın.
IP tabanlı erişim denetimiyle ilgili IPv6 sınırlaması
Remote Config, IP tabanlı erişim politikalarıyla kullanıldığında IPv6 için sınırlı destek sunar. Kuruluşunuz belirli herkese açık IP aralıklarına erişimi kısıtlıyorsa IPv6 ağı üzerinden bağlanmak aşağıdaki sorunlara neden olabilir:
- Konsol erişimi: Firebase konsolundaki belirli Remote Config özellikleri (ör. veri yükleme veya hedefleme ayarlama) kullanamayabilirsiniz.
- İstemci erişimi: İstemci uygulamaları PERMISSION_DENIED hatalarıyla karşılaşabilir.
Bu sorunları önlemek için ağınızı IPv4 kullanacak şekilde yapılandırın veya gerekli Firebase IP aralıklarını kuruluşunuzun izin verilenler listesine ekleyin.
Parametre değeri önceliği
Remote Config kullanarak sunucu uygulamalarında Firebase Admin SDK kullandığınızda, her istemci isteği için uygun parametre değerlerini isteğe bağlı olarak ayıklamak üzere şablonun tamamını getirip yüklersiniz. Bir parametreyle ilişkili birkaç koşullu değer olabilir.
Aşağıdaki kurallar, şablon değerlendirmesi sırasında belirli bir zamanda hangi değerin atanacağını belirler:
Öncelikle, belirli bir istemci isteği için
trueolarak değerlendirilen koşullar için koşullu değerler uygulanır. Birden fazla koşultrueolarak değerlendirilirse Firebase konsol kullanıcı arayüzünde gösterilen en üstteki koşul öncelikli olur ve şablon değerlendirilirken bu koşulla ilişkili koşullu değerler sağlanır. Koşulları Koşullar sayfasına sürükleyip bırakarak koşulların önceliğini değiştirebilirsiniz.truekoşulunu karşılayan koşullu değer yoksa şablon değerlendirmesi sırasında Remote Config'nin varsayılan değeri sağlanır. Bir parametre şablonda yoksa veya varsayılan değer Uygulama içi varsayılanı kullan olarak ayarlanmışsa şablon değerlendirilirken bu parametre için değer sağlanmaz.
Sunucu uygulamalarında Remote Config şablonlarını yükleme ve değerlendirme hakkında daha fazla bilgi için Sunucu ortamlarında Remote Config kullanma başlıklı makaleyi inceleyin.
Parametre değeri veri türleri
Remote Config, her parametre için bir veri türü seçmenize olanak tanır ve şablon güncellemesinden önce tüm Remote Config değerlerini bu türe göre doğrular. Veri türü, getRemoteConfig isteğinde depolanır ve döndürülür.
Desteklenen veri türleri şunlardır:
StringBooleanNumberJSON
Firebase konsol kullanıcı arayüzünde, veri türü parametre anahtarının yanındaki açılır listeden seçilebilir. REST API'de türler, parametre nesnesindeki value_type alanı kullanılarak ayarlanabilir.
Parametre grupları
Remote Config, daha düzenli bir kullanıcı arayüzü ve gelişmiş kullanılabilirlik için parametreleri birlikte gruplandırmanıza olanak tanır.
Örneğin, yeni bir giriş özelliğini kullanıma sunarken üç farklı kimlik doğrulama türünü etkinleştirmeniz veya devre dışı bırakmanız gerektiğini varsayalım. Remote Config ile istediğiniz türleri etkinleştirmek için üç parametre oluşturabilir, ardından bunları "Yeni giriş" adlı bir grupta düzenleyebilirsiniz. Önek eklemeniz veya özel sıralama yapmanız gerekmez.
Parametre gruplarını Firebase konsolunu veya Remote Config REST API'yi kullanarak oluşturabilirsiniz. Oluşturduğunuz her parametre grubunun Remote Config şablonunuzda benzersiz bir adı vardır. Parametre grupları oluştururken aşağıdakileri göz önünde bulundurun:
- Parametreler herhangi bir zamanda yalnızca bir gruba dahil edilebilir ve parametre anahtarı tüm parametreler arasında benzersiz olmalıdır.
- Parametre grubu adları 256 karakterle sınırlıdır.
- Hem REST API'yi hem de Firebase konsolunu kullanıyorsanız yayınlama sırasında parametre gruplarını işlemek için tüm REST API mantığının güncellendiğinden emin olun.
Firebase konsolunu kullanarak parametre grupları oluşturma veya değiştirme
Parametreleri Firebase konsolunda gruplandırabilirsiniz. Grup oluşturma veya değiştirme adımları aşağıda açıklanmıştır:
- Firebase konsolunda DevOps & Engagement (DevOps ve Etkileşim) > Remote Config > Parameters (Parametreler) sayfasına gidin.
- Grupları yönet'i seçin.
- Eklemek istediğiniz parametrelerin onay kutularını işaretleyin ve Gruba taşı'yı seçin.
- Mevcut bir grubu seçin veya ad ve açıklama girip Yeni grup oluştur'u seçerek yeni bir grup oluşturun. Kaydettiğiniz gruplar, Değişiklikleri yayınla düğmesi kullanılarak yayınlanabilir.
Koşul kuralı türleri
Sunucu uygulamaları için Remote Config şablonları aşağıdaki koşul türlerini destekler:
Rastgele yüzdedeki kullanıcı
Kaydırma çubuğu widget'ını kullanarak rastgele karıştırılmış kullanıcıları (uygulama örnekleri) gruplara ayırın ve bu alanı kullanarak uygulama örneklerinin rastgele bir örneğine (örnek boyutları %0,0001 kadar küçük olabilir) değişiklik uygulayın.
Her uygulama örneği, ilgili projede tanımlanan bir başlangıç değerine göre rastgele bir tam sayı veya kesirli sayıyla kalıcı olarak eşlenir.
Bir kural, başlangıç değerini değiştirmediğiniz sürece varsayılan anahtarı (Firebase konsolunda Başlangıcı düzenle olarak gösterilir) kullanır. Başlangıç alanını temizleyerek bir kuralı varsayılan anahtarı kullanmaya döndürebilirsiniz.
Belirli yüzde aralıklarındaki aynı uygulama örneklerine tutarlı bir şekilde hitap etmek için koşullarda aynı başlangıç değerini kullanın. Alternatif olarak, yeni bir başlangıç değeri belirterek belirli bir yüzde aralığı için rastgele atanmış yeni bir uygulama örneği grubu seçebilirsiniz.
Örneğin, bir uygulamanın kullanıcılarının% 5'lik bir bölümüne uygulanan iki ilgili koşul oluşturmak için bir koşulu% 0 ile% 5 arasındaki bir yüzdeyle eşleşecek şekilde, diğer koşulu ise% 5 ile %10 arasındaki bir aralıkla eşleşecek şekilde yapılandırabilirsiniz. Bazı kullanıcıların her iki grupta da rastgele görünmesine izin vermek için her koşuldaki kurallar için farklı başlangıç değerleri kullanın.
Uygulamanıza rastgele yüzde koşulları eklemeyi öğrenmek için Sunucu uygulamanızı yapılandırma başlıklı makaleyi inceleyin.
Özel sinyal koşulları
Uygulamanızda tanımladığınız rastgele koşullarla eşleşmek için Özel sinyal koşullu değerlerini kullanabilirsiniz. Bu sayede, her istemci isteği için sunucu yanıtını özelleştirebilirsiniz. Özel sinyal koşulları, aşağıdaki sunucu ortamı sürümlerinde desteklenir:
- Firebase Admin Node.js SDK'sı v12.1.0 veya sonraki sürümler
- Firebase Admin Python SDK'sı v6.7.0 veya sonraki sürümler
- Firebase Admin Go SDK'sı v4.17.0+
- Firebase Admin Java SDK'sı v9.7.0 veya sonraki sürümler
Örneğin, belirli platformlar için ayarlanmış farklı modellerle yanıt oluşturmaya yardımcı olmak üzere üretken yapay zekayı kullanan bir sunucu uygulamasında çalışıyorsanız şunları yapabilirsiniz:
promptvemodel_nameparametrelerini Remote Config sunucu şablonunuza ekleyin.- Hedeflemek istediğiniz her platform için
platformdeğerine sahip özel sinyal koşulları ekleyin. - Sunucuya özel Remote Config şablonunuza varsayılan değerler ve tanımladığınız her platform koşulu için koşullu değerler ekleyin.
- Uygulama kodunuzu,
platformözel sinyali ayarlayıp kullanacak şekilde güncelleyin.
Artık uygulamanız, şablon değerlendirmesi sırasında uygun istemi ve modeli çıkarabilir ve bunları kullanarak her müşteriye özel yanıtlar döndürebilir.
Firebase konsolunda özel sinyal koşulları oluşturmak için aşağıdaki kural türlerini kullanabilirsiniz.
| Operatör kategorisi | Operatörler | Değer |
|---|---|---|
| Metin | tam olarak eşleşir, içerir, içermez, normal ifade içerir |
Bu kural için dize karşılaştırmaları büyük/küçük harfe duyarlıdır. Tam olarak eşleşir, şunu içerir:, şunu içermez: veya normal ifade içerir operatörünü kullanırken birden fazla değer seçebilirsiniz. Normal ifade içerir operatörünü kullanırken RE2 biçiminde normal ifadeler oluşturabilirsiniz. Normal ifadeniz, hedef sürüm dizesinin tamamıyla veya bir kısmıyla eşleşebilir. Hedef dizenin başlangıcı, sonu veya tamamıyla eşleşmek için ^ ve $ çapa işaretlerini de kullanabilirsiniz. |
| Numbers | <, <=, =, !=, >, >= | Ondalık işaretinin her iki tarafında en fazla 10 basamaklı sayı. |
| Sürümler | <, <=, =, !=, >, >= | Eşleştirilecek sürüm numaralarını temsil eden rakam (örneğin, 2.1.0). |
Uygulamanıza nasıl özel sinyaller ekleyeceğinizi öğrenmek için Sunucu uygulamanızı yapılandırma başlıklı makaleyi inceleyin.
Arama parametreleri ve koşulları
Projenizin parametre anahtarlarını, parametre değerlerini ve koşullarını Firebase konsolunda arayabilirsiniz. Bunun için DevOps & Engagement > Remote Config > Parametreler sayfasının üst kısmındaki arama kutusunu kullanın.
Parametreler ve koşullarla ilgili sınırlar
Bir Firebase projesinde en fazla 3.000 parametre ve 2.000 koşul olabilir. Parametre anahtarları en fazla 256 karakter uzunluğunda olabilir, alt çizgi veya İngilizce harf karakteriyle (A-Z, a-z) başlamalı ve rakamlar da içerebilir. Bir projedeki parametre değeri dizelerinin toplam uzunluğu 1.000.000 karakteri aşamaz. Ayrıca, kullanıcı özelliklerine dayalı koşul kuralları en fazla 100 kullanıcı özelliği değeri içerebilir. Sınırların tam listesi için Kotalar ve sınırlar başlıklı makaleyi inceleyin.
Parametrelerde ve koşullarda yapılan değişiklikleri görüntüleme
Remote Config şablonlarınızda yapılan en son değişiklikleri Firebase konsolundan görüntüleyebilirsiniz. Her bir parametre ve koşul için şunları yapabilirsiniz:
Parametreyi veya koşulu en son değiştiren kullanıcının adını görüntüleyin.
Değişiklik aynı gün içinde yapıldıysa değişikliğin etkin Remote Config şablonunda yayınlanmasından bu yana geçen dakika veya saat sayısını görüntüleyin.
Değişiklik bir veya daha fazla gün önce yapıldıysa değişikliğin etkin Remote Config şablonunda yayınlandığı tarihi görüntüleyin.
Parametrelerin değişiklik geçmişi
Firebase konsolunda DevOps & Engagement (DevOps ve Etkileşim) > Remote Config > Parameters (Parametreler) sayfasına gidin. Son yayınlanma tarihi sütununda, her parametreyi değiştiren son kullanıcı ve değişikliğin son yayınlanma tarihi gösterilir:
Gruplandırılmış parametrelerin değişiklik meta verilerini görüntülemek için parametre grubunu genişletin.
Yayınlanma tarihine göre artan veya azalan düzende sıralamak için Son yayınlanma sütun etiketini tıklayın.
Koşulların değişiklik geçmişi
Firebase konsolunda DevOps & Engagement (DevOps ve Etkileşim) > Remote Config (Uzaktan Yapılandırma) > Koşullar sayfasına gidin. Her koşulun altındaki Son değiştirme seçeneğinin yanında, koşulu değiştiren son kullanıcıyı ve koşulun değiştirildiği tarihi görebilirsiniz.
Sonraki adımlar
Firebase projenizi ve sunucu uygulamanızı Remote Config kullanacak şekilde yapılandırmak için Sunucu ortamlarında Remote Config kullanma başlıklı makaleyi inceleyin.