Metrik Yapılandırma Oluşturucu

Metrik Yapılandırma Oluşturucu (MCG), SDV telemetri yapılandırmalarının oluşturulmasını kolaylaştıran bir hizmettir. MCG, okunabilir JSON yapılandırmalarını, araç içi telemetri kampanyaları için gereken ikili MetricsConfiguration protokol arabelleği (protobuf) dosya biçimine dönüştürür.

MCG, standart HTTP isteklerini kullanarak etkileşimde bulunduğunuz bir web hizmetidir. Bu API tabanlı yaklaşım, manuel oluşturma ve hata ayıklama için curl gibi komut satırı araçlarını kullanmanıza veya yapılandırma oluşturmaya yönelik grafik arayüz gibi daha gelişmiş araçlar için MCG'yi arka uç olarak entegre etmenize olanak tanır.

Özellikler

Araçtaki Telemetri hizmeti, MetricsConfiguration ikili protobuf mesajı gerektirir. Bu mesaj, hata ayıklama için textproto biçiminde gösterilebilse de bu biçimin doğrudan oluşturulması, düşük seviyeli yapısı hakkında ayrıntılı bilgi gerektirir ve sıkıcı olabileceği gibi hataya açık olabilir. MCG, yapılandırma oluşturmayı kullanıcı dostu bir JSON biçimine kaydırarak bu süreci kolaylaştırır.

MCG aşağıdaki özellikleri içerir:

  • JSON tabanlı yapılandırma: Veri kaynakları, işleme mantığı ve raporlama kuralları dahil olmak üzere metrik yapılandırmaları, okunabilir bir JSON biçiminde tanımlanabilir. Bu biçim, MCG tarafından gerekli ikili protobuf biçimine derlenir.
  • Yerleşik doğrulama: Oluşturma işlemi, dağıtımdan önce hataları tespit etmek için yapılandırmaları sinyal tanımlarına ve şema kurallarına göre otomatik olarak doğrular.
  • Otomatik mesaj türü oluşturma: Toplayıcılar ve raporlar, son ikili yapılandırmada protobuf mesaj tanımlayıcıları kullanılarak tanımlanması gereken sonuçlar üretir. MCG, bu sonuçların yapısını giriş sinyali türlerine ve toplama mantığına göre çıkarır ve gerekli mesaj tanımlayıcılarını otomatik olarak oluşturur. Bu sayede, ara veya rapora özel veri yapıları için şemaları manuel olarak tanımlamanıza gerek kalmaz.
  • Daha kolay ifade oluşturma: İfadeleri tanımlamak için kullanılan özel ve kullanıcılar tarafından okunabilir bir dilbilgisi, ifade ağaçlarının manuel olarak oluşturulmasını önler.

İş akışı

Metrik yapılandırmaları oluşturmak için MCG'yi kullanmak iki ana aşamadan oluşur: kullanmayı planladığınız her Araç Sinyali Kataloğu sürümünün tek seferlik yüklenmesi ve ardından ayrı metrik yapılandırmalarının yazılıp oluşturulması.

  1. Sinyal tanımlarını yükleme: Bu adım, Araç Sinyali Kataloğu sürümü başına yalnızca bir kez gerçekleştirilmelidir. Doğrulamayı ve tür çıkarımını etkinleştirmek için MCG'nin, yapılandırmalarınızda referans vermek istediğiniz araç sinyali tanımlarına erişmesi gerekir. Bu tanımlar, VSIDL kataloğunun bir parçası olarak projenizde protobuf dosyaları olarak zaten mevcut olmalıdır (veya deneme yapmak için örnek tanımları kullanabilirsiniz). Bu verileri MCG'de kullanılabilir hale getirmek için bir Araç Sinyali Kataloğu'nda paketleyin ve API'yi kullanarak yükleyin:

  2. Yazma yapılandırması: Bir katalog sürümü MCG'ye yüklendikten sonra, bu sürümü referans alan istediğiniz sayıda metrik yapılandırması yazabilirsiniz. JSON yapılandırmasında, hangi veri kaynaklarının kullanılacağını, bu veriler üzerinde nasıl hesaplama veya toplama işlemleri yapılacağını ve sonuçların ne zaman oluşturulacağını belirleyen tetikleyicileri tanımlarsınız.

  3. Oluşturma: JSON yapılandırmanızı MCG API'ye gönderin. API, yapılandırmayı doğrular ve MetricsConfiguration biçiminde derler. Bu, araç içi kullanım için ikili protobuf (application/x-protobuf) olarak veya inceleme ya da hata ayıklama için textproto (text/x-protobuf) olarak istenebilir.

Tüm uç noktalar, istek ve yanıt biçimleri ve kullanım örnekleri hakkında ayrıntılı bilgi için MCG API referansı'na bakın.

Dağıtım

Bulutta yerel bir hizmet olan MCG, bir bulut ortamına (ör. Google Cloud Run) dağıtılmak üzere tasarlanmıştır. Bu sayede, ekipleriniz arasında yapılandırma oluşturma ve doğrulama için merkezi bir nokta sağlar. Dağıtım talimatları için Google Cloud'a dağıtma başlıklı makaleyi inceleyin.

MCG, yerel geliştirme ve test için geliştirici makinesinde bağımsız bir hizmet olarak da çalıştırılabilir. Kurulum talimatları için Yerel olarak çalıştırma başlıklı makaleyi inceleyin.