Alat Dashboarding dengan API Burung
·
24 Mar 2022

Poin Penting
API Burung dapat dikombinasikan dengan Python dan Plotly Dash untuk membangun dasbor interaktif yang kuat tanpa perlu menggunakan UI Burung yang lengkap.
Proyek ini menunjukkan cara memvisualisasikan metrik dan peristiwa menggunakan API Metrik dan API Peristiwa Burung dalam aplikasi web kustom.
Plotly Dash menyediakan kerangka kerja sumber terbuka yang cepat untuk membangun elemen UI seperti dropdown, grafik, dan tabel.
Pengembang dapat memperluas alat ini dengan analitik keterkiriman, penyaringan, dan paginasi untuk dasbor yang lebih kaya.
Peningkatan di masa depan mencakup penyimpanan sementara, UI yang lebih baik, dan integrasi dengan produk Burung lainnya atau API pihak ketiga.
Basis kode (tersedia di GitHub) menawarkan titik awal yang kuat bagi siapa saja yang ingin membangun dasbor bertenaga Burung atau portal yang menghadap pelanggan.
Sorotan Tanya jawab
Apa tujuan dari proyek dasbor ini?
Ini menunjukkan bagaimana pengembang dapat menggunakan API Bird dengan Python dan Plotly Dash untuk membuat dasbor yang didorong data yang memvisualisasikan metrik kampanye dan peristiwa terkini.
Mengapa menggunakan Plotly Dash untuk Bird APIs?
Dash adalah sumber terbuka, mudah untuk disesuaikan, dan ideal untuk membuat UI interaktif tanpa memerlukan keahlian front-end.
Apa yang ditampilkan dasbor?
Ini memvisualisasikan metrik deret waktu dari Bird’s Metrics API dan data acara terbaru dari Events API, dengan opsi untuk memfilter dan memilih metrik di rentang waktu kustom.
Bagaimana alat ini dapat diperluas lebih lanjut?
Dengan menambahkan analitik keteririman, filter canggih, penyimpanan data, dan paginasi untuk dataset besar untuk meningkatkan kinerja dan kegunaan.
Keterampilan atau alat apa yang diperlukan untuk menjalankannya?
Pengetahuan dasar Python dan instalasi requests, dash, dan pandas. Kunci API dari Bird diperlukan untuk menarik data.
Bagaimana proyek ini cocok dengan ekosistem Bird?
Ini menggambarkan bagaimana API terbuka Bird dapat dimanfaatkan untuk membuat dasbor khusus dan alat pelaporan untuk tim atau klien yang tidak memiliki akses ke platform penuh.
Skrip ini hanya menyentuh permukaan dari apa yang mungkin dilakukan menggunakan Python, Plotly Dash, dan API kami.
API Metrik Burung + Dashboarding dengan Python
Hampir setahun yang lalu, Tom Mairs, direktur kesuksesan pelanggan Bird, menulis alat pengirim email yang memanfaatkan API Bird. Dalam posting ini, saya melanjutkan dari tempat ia tinggalkan. Alatnya memungkinkan transmisi pekerjaan secara terjadwal, tetapi bagaimana jika kami ingin membuat dasbor dan log acara kami sendiri?
Mungkin saya ingin membuat dasbor khusus untuk grup bisnis atau dasbor yang ditujukan untuk pelanggan, tetapi tidak memberikan akses penuh kepada pengguna ke UI Bird. Skrip ini hanya menyentuh permukaan dari apa yang mungkin dilakukan dengan Python, Plotly Dash, dan API kami. Ketika membangun dasbor yang memproses data API dengan volume tinggi, perlu diingat bahwa komponen infrastruktur seperti DNS dapat menjadi hambatan - kami telah mengalami tantangan penskalaan DNS AWS yang mempengaruhi kemampuan pemrosesan data kami. Untuk penggemar alur visual, Anda juga dapat mengeksplorasi mengintegrasikan Flow Builder dengan Google Cloud Functions dan Vision API untuk menambahkan otomatisasi yang didorong oleh AI ke dalam jalur pemrosesan data Anda.
Ketika saya memulai pencarian saya secara online, saya ingin menemukan jalan dengan rintangan paling sedikit. Saya bisa saja membuat semua dasbor dan UI sendiri dalam HTML dan Python, namun, setelah beberapa pencarian di Google, saya menemukan Dash Plotly, yang mudah terintegrasi dengan Python. Saya memilih Dash karena 2 alasan: 1) itu adalah sumber terbuka, dan 2) setelah membaca dokumentasi, tampaknya mudah disesuaikan untuk apa yang saya coba lakukan. Dash adalah pustaka sumber terbuka yang ideal untuk membangun dan menerapkan aplikasi data dengan antarmuka pengguna yang disesuaikan. Ini membuat pembuatan UI menjadi sangat sederhana. Pertanyaannya kemudian menjadi, seberapa kompleks saya ingin membuat aplikasi ini? Semakin banyak waktu yang saya habiskan, semakin banyak fitur yang ingin saya tambahkan.
Untuk proyek awal, saya ingin memastikan bahwa saya memiliki dasbor dengan metrik yang dapat disesuaikan dan rentang waktu yang bisa dipilih. Awalnya, saya mulai dengan dasbor di mana Anda hanya bisa memilih satu metrik dari dropdown. Kemudian, setelah mendapatkan umpan balik dari rekan-rekan, saya memperhalus dasbor sedikit untuk menambah multi-pilih dan judul sumbu. Saya juga memutuskan untuk menambahkan tab tambahan untuk log acara. Saya sampai pada titik di mana saya puas dengan apa yang saya miliki sebagai titik awal yang baik bagi siapa saja yang ingin membangun dasbor mereka sendiri. Untuk pengembang yang ingin memberi data webhook waktu nyata ke dalam dasbor mereka, lihat panduan kami tentang membangun konsumen webhook dengan Azure Functions. Tentu saja, saya menempatkan proyek ini di Github agar Anda dapat mengkloning atau membuat cabang.
Memulai
Untuk mengakses aplikasi ini, Anda perlu memastikan Anda menjalankan python 3.10 atau lebih tinggi dan menginstal pustaka berikut:
Pustaka Python | Tujuan |
|---|---|
requests | Komunikasi API dengan layanan Bird |
dash | Render UI dan dashboard |
pandas | Pemrosesan data dan pembuatan tabel |
Kemudian, masukkan kunci API Anda ke dalam App.py dan jalankan aplikasinya. Aplikasi ini akan berjalan di http://localhost:8050. Untuk informasi lebih lanjut tentang menerapkan ini ke server yang dapat diakses publik (seperti AWS), lihat sumber daya berikut:
Membuat Halaman Dasbor
Membuat Halaman Rincian Acara
Langkah Selanjutnya
Bagi seseorang yang ingin membuat dasbor atau log acara sendiri, ini adalah awal yang baik. Dengan kemampuan penyesuaian di sini, langit adalah batasnya.
Seperti yang dibahas di atas, beberapa perbaikan di masa depan yang dapat dilakukan adalah:
Menambahkan analitik keteririman ke dasbor
Menambahkan lebih banyak filter ke dasbor
Opsi caching yang mungkin sehingga API tidak dipanggil setiap kali untuk menampilkan halaman
Perbaikan UI
Menambahkan penyaringan dan paginasi ke halaman detail acara
Saya tertarik untuk mendengar umpan balik atau saran untuk memperluas proyek ini.
~ Zach Samuels, Insinyur Solusi Senior Bird





