2026.09.1 — Log Tablosu ALTER Scriptleri
Bu sayfa listelenmemiştir (unlisted) — sidebar'da ve arama sonuçlarında görünmez, yalnızca 2026.09.1 sürüm notlarındaki doğrudan bağlantı üzerinden erişilmek üzere tasarlanmıştır.
Kimler ihtiyaç duyar
Bu script yalnızca API proxy trafik loglarını SQL/JDBC trafik-log connector üzerinden ilişkisel bir veritabanına (Oracle, MySQL, PostgreSQL veya SQL Server) yazan Apinizer kurulumlarını ilgilendirir.
Elasticsearch veya MongoDB trafik-log connector'ı kullanıyorsanız bu sayfayı tamamen atlayın — o hedefler yeni veriyi elle bir adım gerektirmeden taşır. Elasticsearch tarafında indeks şablonu yükseltme sırasında güncellenir ve indeks otomatik olarak rollover edilir.
Ne değişti
Apinizer 2026.09.1, log_ApiProxyTraffic tablosuna beş kolon ekler.
Politika çalışma süreleri (policy_exec_times) — bir istekte çalışan her politikanın sırası, tipi ve milisaniye cinsinden süresi. "Süreyi hangi politika yedi?" sorusunun cevabı bugüne kadar Trace açmayı gerektiriyordu; Trace istek ve yanıt gövdelerinin tamamını kaydettiği için production'da sürekli açık tutulamaz. Özellik varsayılan olarak kapalıdır ve API Proxy > Log Ayarları altında log hedefi başına açılır. İlişkisel bir hedefte liste, sıra:tip:süre üçlülerinden oluşan karakter sınırlı bir CSV olarak yazılır:
1:jwt-auth:12|2:rate-limit:3|10001:content-filter:41|10002:ai-semantic-cache:8[S]
Değer yazılmadan önce 2000 karakterde sınırlanır ve kesme her zaman görünürdür (|+N, N = sığmayan kayıt adedi), sessiz değildir. Kolonun 4000 karakter genişliğinde tanımlanmasının nedeni, Oracle'da VARCHAR2 uzunluklarının byte cinsinden sayılmasıdır; 2000 karakterlik bir cap en kötü durumda 4000 byte'lık alan ister.
Outbound MCP ve A2A denetimi (mcp_tool_names_out, mcp_tool_call_count_out, a2a_skill_names_out, a2a_agent_call_count_out) — bir AI proxy'nin dışarı doğru hangi MCP tool'larını ve A2A skill/agent'larını çağırdığı ve kaç çağrı yaptığı. Ad kolonları 256 karakterle sınırlı, tekrarsız bir CSV tutar; sayı kolonları ham ve sınırsız toplamı tutar, böylece ad listesi kesilse bile gerçek çağrı hacmi görünür kalır. Bu alanlar outbound MCP/A2A trafiğinde her zaman yazılır, bir ayar gerektirmez.
Beş kolon da nullable ve seyrektir (sparse) — ilgili özelliğin devreye girmediği trafikte NULL kalır. Gateway yazım yolu fail-soft'tur: bir kolon yoksa yalnızca o alan atlanır, log yazımı başarısız olmaz; dolayısıyla script'i geç çalıştırmak veri kaybettirir ama trafiği etkilemez.
2026.04.x'ten gelen kurulumlar için hazırlanan kümülatif 2026.09.0 script'i dört MCP/A2A denetim kolonunu zaten içerir. Onu çalıştırdıysanız aşağıdan yalnızca policy_exec_times kolonunu ekleyin, dört denetim kolonunu atlayın — var olan bir kolonu yeniden eklemek hata verir.
Ne zaman çalıştırılmalı
Bu script'i yapılandırılmış her SQL/JDBC trafik-log veritabanına karşı bir kez çalıştırın; 2026.09.1 yükseltmesinden önce ya da yükseltme sırasında olabilir, bakım penceresi gerektirmez. Kolon nullable olduğu için yükseltme öncesi log satırlarını yazmaya devam eden eski gateway worker'ları etkilenmez. DDL için bir değişiklik yönetimi süreciniz varsa önce production dışı bir ortamda deneyin.
Oracle
ALTER TABLE log_ApiProxyTraffic ADD (
mcp_tool_names_out VARCHAR2(256),
mcp_tool_call_count_out NUMBER(10),
a2a_skill_names_out VARCHAR2(256),
a2a_agent_call_count_out NUMBER(10),
policy_exec_times VARCHAR2(4000)
);
PostgreSQL
ALTER TABLE log_ApiProxyTraffic
ADD COLUMN mcp_tool_names_out VARCHAR(256),
ADD COLUMN mcp_tool_call_count_out INTEGER,
ADD COLUMN a2a_skill_names_out VARCHAR(256),
ADD COLUMN a2a_agent_call_count_out INTEGER,
ADD COLUMN policy_exec_times VARCHAR(4000);
MySQL
ALTER TABLE log_ApiProxyTraffic
ADD COLUMN mcp_tool_names_out VARCHAR(256),
ADD COLUMN mcp_tool_call_count_out INT,
ADD COLUMN a2a_skill_names_out VARCHAR(256),
ADD COLUMN a2a_agent_call_count_out INT,
ADD COLUMN policy_exec_times VARCHAR(4000);
SQL Server
ALTER TABLE log_ApiProxyTraffic ADD
mcp_tool_names_out NVARCHAR(256),
mcp_tool_call_count_out INT,
a2a_skill_names_out NVARCHAR(256),
a2a_agent_call_count_out INT,
policy_exec_times NVARCHAR(4000);
Doğrulama
Script'i çalıştırdıktan sonra bir API Proxy için ilişkisel log hedefinde Politika çalışma sürelerini açın, o proxy'yi yeniden dağıtın ve üzerinden bir istek geçirin. Kolon o istek için bir CSV değeri taşımalıdır:
SELECT correlation_id, policy_exec_times
FROM log_ApiProxyTraffic
WHERE policy_exec_times IS NOT NULL
ORDER BY log_timestamp DESC;
MCP/A2A denetim kolonları bir ayar gerektirmez — bir MCP tool'u ya da A2A agent'ı çağıran AI proxy üzerinden istek geçirin:
SELECT correlation_id, mcp_tool_names_out, mcp_tool_call_count_out,
a2a_skill_names_out, a2a_agent_call_count_out
FROM log_ApiProxyTraffic
WHERE mcp_tool_names_out IS NOT NULL OR a2a_skill_names_out IS NOT NULL
ORDER BY log_timestamp DESC;
Yeni kurulumlarda bir işlem gerekmez — Apinizer Log Tabloları Oluşturma Komutları sayfasındaki CREATE TABLE ifadesi kolonu zaten içerir.