Sunucu Kayıt Kancaları
Sunucu kayıtları, sunucu grupları ve içe aktarmanın sekiz kancası.
Genel Bakış
Sunucu kayıtları, hizmetlerin üzerinde kurulduğu makinelerin bilgisini taşır. Kaydetme, güncelleme, silme ve içe aktarma adımlarının hepsi burada.
? Bir ayrım hayati: kayıt filtresinde parola açık metindir, olaylarda ise şifrelidir. Filtre, şifrelemenin öncesinde durur.
Referans
Kaydedilecek sunucu verisini değiştirme
Sunucu kaydı yazılmadan önce çalışır. Erişim bilgilerinin şifrelenmesinden önceki noktadır.
Hook::add('filter:product.server_save_data', 10, function (&$set_data, $type, $detail) {
// PAROLA BURADA ACIK METIN: kaydi oldugu gibi hicbir yere yazmayin.
$set_data['ns1'] = Acme::defaultNs(1);
$set_data['ns2'] = Acme::defaultNs(2);
});Sunucu eklenmesini izleme
Yeni bir sunucu kaydı oluşturulduktan sonra çalışır.
Hook::add('action:product.server_created', 10, function ($id, $set_data, $type) {
// Parola burada sifreli: izleme sistemine yalniz adresi verin.
Acme::addMonitor($id, $set_data['ip'] ?? '');
});Sunucu güncellemesini izleme
Bir sunucu kaydı güncellendikten sonra çalışır.
Hook::add('action:product.server_updated', 10, function ($id, $set_data, $type, $detail) {
// Adres degistiyse izlemeyi tasiyin.
if (($detail['ip'] ?? '') !== ($set_data['ip'] ?? ''))
Acme::moveMonitor($id, $set_data['ip'] ?? '');
});Sunucu silmeyi durdurma
Bir sunucu kaydı silinmeden önce çalışır. Kayıt gider, sunucunun kendisi ve üstündeki hesaplar kalır.
Hook::add('gate:product.server_delete', 10, function ($id, $detail) {
// Kayit gider ama sunucudaki hesaplar kalir.
if (Acme::serverHasServices($id)) return 'Bu sunucuda calisan hizmetler var.';
return null;
});Sunucu silinmesini izleme
Sunucu kaydı silindikten sonra çalışır.
Hook::add('action:product.server_deleted', 10, function ($i, $detail) {
Acme::dropMonitor($i);
});Sunucudan içe aktarmayı izleme
Bir sunucudaki hesaplar hizmet olarak içe aktarıldıktan sonra çalışır.
Hook::add('action:product.server_imported', 10, function ($server, $imported) {
// Elemanlar METINDIR, kayit degil.
Acme::notifyOps(count($imported) . ' hizmet ice aktarildi: ' . ($server['name'] ?? ''));
});Sunucu grubu verisini değiştirme
Sunucu grubu kaydedilmeden önce çalışır.
Hook::add('filter:product.server_group_save_data', 10, function (&$data, $detail) {
// Sunucu listesi VIRGULLU METIN, dizi degil.
$ids = array_filter(explode(',', (string) ($data['servers'] ?? '')));
$data['servers'] = implode(',', Acme::onlyHealthy($ids));
});Sunucu grubu silmeyi durdurma
Bir sunucu grubu silinmeden önce çalışır.
Hook::add('gate:product.server_group_delete', 10, function ($id, $detail) {
if (Acme::groupBoundToProducts($id)) return 'Bu gruba bagli urunler var.';
return null;
});Tuzaklar
Sunucu kayıt filtresi şifrelemeden önce çalışır: parola alanı düz metin taşır. O diziyi olduğu gibi günlüğe yazmak, dış servise göndermek ya da kendi tablonuza kopyalamak, sunucu parolasını düz metin sızdırmaktır. Olaylarda aynı alan şifrelidir.
Silme yalnız kaydı kaldırır. Sunucudaki hesaplar, alanlar ve veriler yerinde kalır; sistem onları artık tanımaz. Silme kapısı, bunu fark edebileceğiniz son noktadır.
İlgili Makaleler
- Ürün Kancaları
- Hizmet Kancaları
- Kancalar Nasıl Çalışır
Geri bildiriminiz için teşekkürler!
Yukarıda bulamadığınız her şey için destek ekibimiz her zaman yanınızda.