Mengaktifkan linting dan analisis untuk tata kelola API di pusat API Anda

Artikel ini menunjukkan cara mengaktifkan linting untuk menganalisis definisi API di pusat API organisasi Anda agar sesuai dengan aturan gaya API organisasi Anda. Linting menghasilkan laporan analisis yang dapat Anda akses di pusat API Anda. Gunakan linting dan analisis API untuk mendeteksi kesalahan umum dan inkonsistensi dalam definisi API Anda.

Gambaran umum skenario

Dalam skenario ini, Anda menganalisis definisi API di pusat API Anda dengan menggunakan mesin Spectral sumber terbuka linting. Aplikasi Azure Functions menjalankan mesin linting sebagai respons terhadap peristiwa di pusat API Anda. Spectral memeriksa bahwa API yang ditentukan dalam dokumen spesifikasi JSON atau YAML sesuai dengan aturan dalam panduan gaya API yang dapat disesuaikan. Laporan kepatuhan API dihasilkan yang dapat Anda lihat di pusat API Anda.

Diagram berikut menunjukkan langkah-langkah untuk mengaktifkan linting dan analisis di pusat API Anda.

Diagram memperlihatkan cara kerja linting API di Azure API Center.

  1. Sebarkan aplikasi Azure Functions yang menjalankan mesin linting Spectral pada definisi API.

  2. Konfigurasikan langganan peristiwa di pusat Azure API untuk memicu aplikasi fungsi.

  3. Peristiwa dipicu dengan menambahkan atau mengganti definisi API di pusat API.

  4. Saat menerima peristiwa, aplikasi fungsi memanggil mesin linting Spectral.

  5. Mesin linting memeriksa bahwa API yang ditentukan dalam definisi sesuai dengan panduan gaya API organisasi dan menghasilkan laporan.

  6. Lihat laporan analisis di pusat API.

Opsi untuk menyebarkan mesin linting dan langganan peristiwa

Artikel ini menyediakan dua opsi untuk menyebarkan mesin linting dan langganan peristiwa di pusat API Anda:

  • Penyebaran otomatis - Gunakan CLI pengembang Azure (azd) untuk penyebaran satu langkah infrastruktur linting. Opsi ini direkomendasikan untuk proses penyebaran yang disederhanakan.

  • Penyebaran manual - Ikuti panduan langkah demi langkah untuk menyebarkan aplikasi Azure Functions dan mengonfigurasi langganan peristiwa. Opsi ini direkomendasikan jika Anda lebih suka menyebarkan dan mengelola sumber daya secara manual.

Batasan

  • Linting saat ini hanya mendukung file spesifikasi JSON atau YAML, seperti dokumen spesifikasi OpenAPI atau AsyncAPI.
  • Secara default, mesin linting menggunakan ruleset bawaan.spectral:oas Untuk memperluas set aturan atau membuat panduan gaya API kustom, lihat repositori Spectral GitHub.
  • Aplikasi fungsi Azure yang memanggil linting dibebankan secara terpisah, dan Anda mengelola dan memeliharanya.

Prasyarat

  • Pusat API di langganan Azure Anda. Jika Anda belum membuatnya, lihat Mulai Cepat: Membuat pusat API Anda.

  • Penyedia sumber daya Event Grid terdaftar di langganan Anda. Jika Anda perlu mendaftarkan penyedia sumber daya Event Grid, lihat Berlangganan peristiwa yang diterbitkan oleh mitra dengan Azure Event Grid.

  • Untuk Azure CLI:

    Catatan

    az apic perintah memerlukan apic-extension ekstensi Azure CLI. Jika Anda belum menggunakan az apic perintah, ekstensi diinstal secara dinamis saat Anda menjalankan perintah pertama az apic Anda. Pelajari selengkapnya tentang ekstensi Azure CLI.

    Catatan

    Contoh perintah Azure CLI dalam artikel ini dapat berjalan di PowerShell atau shell bash. Jika diperlukan karena sintaks variabel yang berbeda, contoh perintah terpisah disediakan untuk dua shell.

azd penyebaran aplikasi Azure Functions dan langganan peristiwa

Bagian ini menyediakan langkah-langkah otomatis menggunakan Azure Developer CLI untuk mengonfigurasi aplikasi Azure Functions dan langganan peristiwa yang mengaktifkan linting dan analisis di pusat API Anda. Anda juga dapat mengonfigurasi sumber daya secara manual.

Prasyarat lain untuk opsi ini

Jalankan sampel menggunakan azd

  1. Kloning repositori GitHub dan buka di Visual Studio Code.

  2. Ubah direktori ke APICenter-Analyzer folder di repositori.

  3. resources/rulesets Di folder, Anda dapat menemukan oas.yaml file. File ini mencerminkan panduan gaya API Anda saat ini dan dapat dimodifikasi berdasarkan kebutuhan dan persyaratan organisasi Anda.

  4. Autentikasi dengan Azure Developer CLI dan Azure CLI menggunakan perintah berikut:

    azd auth login
    
    az login
    
  5. Jalankan perintah berikut untuk menyebarkan infrastruktur linting ke langganan Azure Anda.

    azd up
    
  6. Ikuti perintah untuk memberikan informasi dan pengaturan penyebaran yang diperlukan, seperti nama lingkungan dan nama pusat API. Untuk detailnya, lihat Menjalankan sampel menggunakan Azure Developer CLI (azd).

    Catatan

    Penyebaran mungkin perlu waktu beberapa menit.

  7. Setelah penyebaran selesai, navigasikan ke pusat API Anda di portal Azure. Di menu sebelah kiri, pilih langganan Peristiwa>Peristiwa untuk melihat langganan peristiwa yang dibuat.

Anda sekarang dapat mengunggah file definisi API ke pusat API Anda untuk memicu langganan peristiwa dan menjalankan mesin linting.

Langkah-langkah manual untuk mengonfigurasi aplikasi Azure Functions dan langganan peristiwa

Bagian ini menyediakan langkah-langkah penyebaran manual untuk mengonfigurasi aplikasi Azure Functions dan langganan peristiwa untuk mengaktifkan linting dan analisis di pusat API Anda. Anda juga dapat menggunakan Azure Developer CLI untuk penyebaran otomatis.

Prasyarat lain untuk opsi ini

Langkah 1. Menyebarkan aplikasi Azure Functions Anda

Untuk menyebarkan aplikasi Azure Functions yang menjalankan fungsi linting pada definisi API:

  1. Kloning repositori GitHub dan buka di Visual Studio Code.

  2. resources/rulesets Di folder, Anda dapat menemukan oas.yaml file. File ini mencerminkan panduan gaya API Anda saat ini dan dapat dimodifikasi berdasarkan kebutuhan dan persyaratan organisasi Anda.

  3. Secara opsional, jalankan aplikasi fungsi secara lokal untuk mengujinya. Untuk detailnya, lihat file README di repositori.

  4. Sebarkan aplikasi fungsi ke Azure. Untuk langkah-langkahnya, lihat Mulai Cepat: Membuat fungsi di Azure dengan TypeScript menggunakan Visual Studio Code.

    Catatan

    Menyebarkan aplikasi fungsi mungkin memakan waktu beberapa menit.

  5. Masuk ke portal Azure, dan buka aplikasi fungsi.

  6. Pada halaman Gambaran Umum , periksa detail berikut ini:

    • Konfirmasikan bahwa Status aplikasi fungsi Sedang Berjalan.
    • Di bawah Functions, konfirmasikan bahwa Statusfungsi apicenter-analyzer Diaktifkan.

    Cuplikan layar aplikasi fungsi di portal.

Langkah 2. Mengonfigurasi identitas terkelola di aplikasi fungsi Anda

Untuk mengaktifkan aplikasi fungsi untuk mengakses pusat API, konfigurasikan identitas terkelola untuk aplikasi fungsi. Langkah-langkah berikut menunjukkan cara mengaktifkan dan mengonfigurasi identitas terkelola yang ditetapkan sistem untuk aplikasi fungsi menggunakan portal Azure atau Azure CLI.

  1. Di portal Azure, navigasikan ke aplikasi fungsi Anda dan pilih Identitas di bawah bagian Pengaturan.
  2. Pada tab Sistem yang ditetapkan, atur Status ke Aktif lalu pilih Simpan.

Sekarang setelah identitas terkelola diaktifkan, tetapkan peran Azure API Center Compliance Manager untuk mengakses pusat API.

  1. Di portal Azure, navigasikan ke pusat API Anda dan pilih Kontrol akses (IAM).
  2. Pilih + Tambahkan > penetapan peran.
  3. Pilih Peran fungsi pekerjaan lalu pilih Azure API Center Compliance Manager. Pilih Selanjutnya.
  4. Pada halaman Anggota , di Tetapkan akses ke, pilih Identitas > terkelola + Pilih anggota.
  5. Pada halaman Pilih identitas terkelola, cari dan pilih identitas terkelola aplikasi fungsi. Klik Pilih lalu Berikutnya.
  6. Tinjau penetapan peran, dan pilih Tinjau + tetapkan.

Langkah 3. Mengonfigurasi langganan peristiwa di pusat API Anda

Sekarang buat langganan peristiwa di pusat API Anda untuk memicu aplikasi fungsi saat file definisi API diunggah atau diperbarui. Langkah-langkah berikut menunjukkan cara membuat langganan peristiwa menggunakan portal Azure atau Azure CLI.

  1. Di portal Azure, navigasikan ke pusat API Anda dan pilih Peristiwa.

  2. Pada tab Memulai , pilih Azure Function.

  3. Pada halaman Buat Langganan Peristiwa, lakukan hal berikut ini:

    1. Masukkan Nama deskriptif untuk langganan peristiwa, dan pilih Skema Event Grid.

    2. Di Detail topik, masukkan Nama topik sistem pilihan Anda.

    3. Di Jenis Peristiwa, pilih peristiwa berikut:

      • Definisi API ditambahkan
      • Definisi API diperbarui
    4. Di Detail Titik Akhir, pilih Azure Function > Mengonfigurasi titik akhir.

    5. Pada halaman Pilih Azure Function , pilih aplikasi fungsi dan fungsi apicenter-linter yang Anda konfigurasikan. Klik Konfirmasi pilihan.

    6. Pilih Buat.

      Cuplikan layar pembuatan langganan peristiwa di portal.

  4. Pilih tab Langganan peristiwa dan pilih Refresh. Konfirmasikan bahwa status Provisi langganan peristiwa Berhasil.

    Cuplikan layar status langganan peristiwa di portal.

Catatan

Mungkin perlu waktu singkat agar langganan peristiwa disebarluaskan ke aplikasi fungsi.

Memicu peristiwa di pusat API Anda

Untuk menguji langganan peristiwa, coba unggah atau perbarui file definisi API yang terkait dengan versi API di pusat API Anda. Misalnya, unggah dokumen OpenAPI atau AsyncAPI. Setelah langganan peristiwa dipicu, aplikasi fungsi memanggil mesin linting API untuk menganalisis definisi API.

Untuk mengonfirmasi bahwa langganan peristiwa dipicu:

  1. Navigasi ke pusat API Anda, dan pilih Peristiwa di menu sebelah kiri.

  2. Pilih tab Langganan Peristiwa dan pilih langganan peristiwa untuk aplikasi fungsi Anda.

  3. Tinjau metrik untuk mengonfirmasi bahwa langganan peristiwa dipicu dan bahwa linting berhasil dipanggil.

    Cuplikan layar metrik untuk langganan peristiwa di portal.

    Catatan

    Mungkin perlu waktu beberapa menit agar metrik muncul.

Setelah menganalisis definisi API, mesin linting menghasilkan laporan berdasarkan panduan gaya API yang dikonfigurasi.

Melihat laporan analisis API

Anda dapat melihat laporan analisis untuk definisi API Anda di portal Azure. Setelah definisi API dianalisis, laporan mencantumkan kesalahan, peringatan, dan informasi berdasarkan panduan gaya API yang dikonfigurasi.

Di portal, Anda juga dapat melihat ringkasan laporan analisis untuk semua definisi API di pusat API Anda.

Laporan analisis untuk definisi API

Untuk melihat laporan analisis untuk definisi API di pusat API Anda:

  1. Di portal, navigasikan ke versi API di pusat API tempat Anda menambahkan atau memperbarui definisi API.
  2. Di menu sebelah kiri, di bawah Detail, pilih Definisi.
  3. Pilih definisi API yang Anda unggah atau perbarui.
  4. Pilih tab Analisis . Cuplikan layar tab Analisis untuk definisi API di portal.

Laporan Analisis API terbuka, dan menampilkan definisi api dan kesalahan, peringatan, dan informasi berdasarkan panduan gaya API yang dikonfigurasi. Cuplikan layar berikut menunjukkan contoh laporan analisis API.

Cuplikan layar laporan analisis API di portal.

Ringkasan analisis API

Untuk melihat ringkasan laporan analisis untuk semua definisi API di pusat API Anda:

  1. Di portal, navigasikan ke pusat API Anda.

  2. Di menu sebelah kiri, di bawah Tata Kelola, pilih Analisis API. Ringkasan muncul.

    Cuplikan layar ringkasan analisis API di portal.

Pelajari selengkapnya tentang Event Grid: