Clockwork adalah alat pengembangan untuk PHP yang tersedia langsung di browser Anda. Clockwork memberi Anda wawasan tentang waktu proses aplikasi Anda - termasuk data permintaan, metrik kinerja, entri log, kueri basis data, kueri cache, perintah redis, peristiwa yang dikirim, tugas antrean, tampilan yang dirender, dan banyak lagi - untuk permintaan HTTP, perintah, tugas antrean, dan pengujian .
Repositori ini berisi komponen sisi server Clockwork.
Lihat di situs web Clockwork untuk detailnya.
Instal perpustakaan Clockwork melalui Komposer.
composer require itsgoingd/clockwork
Selamat, Anda sudah selesai! Untuk mengaktifkan lebih banyak fitur seperti perintah atau pembuatan profil pekerjaan antrean, publikasikan file konfigurasi melalui perintah vendor:publish
Artisan.
Catatan: Jika Anda menggunakan cache rute Laravel, Anda perlu menyegarkannya menggunakan perintah Route:cache Artisan.
Baca petunjuk instalasi lengkap di situs web Clockwork.
Komponen sisi server Clockwork mengumpulkan dan menyimpan data tentang aplikasi Anda.
Clockwork hanya aktif ketika aplikasi Anda berada dalam mode debug secara default. Anda dapat memilih untuk mengaktifkan atau menonaktifkan Clockwork secara eksplisit, atau bahkan mengatur Clockwork agar selalu mengumpulkan data tanpa memaparkannya untuk analisis lebih lanjut.
Kami mengumpulkan sejumlah besar data berguna secara default, tetapi Anda dapat mengaktifkan lebih banyak fitur atau menonaktifkan fitur yang tidak Anda perlukan di file konfigurasi.
Beberapa fitur mungkin memungkinkan opsi lanjutan, misalnya. untuk kueri basis data, Anda dapat menetapkan ambang kueri yang lambat atau mengaktifkan pendeteksian kueri duplikat (N+1). Periksa file konfigurasi untuk melihat semua yang dapat dilakukan Clockwork.
Ada beberapa opsi yang memungkinkan Anda memilih permintaan Clockwork mana yang aktif.
Mode sesuai permintaan akan mengumpulkan data hanya ketika aplikasi Clockwork terbuka. Anda bahkan dapat menentukan rahasia yang akan diatur dalam pengaturan aplikasi untuk mengumpulkan permintaan. Errors only hanya akan mencatat permintaan yang diakhiri dengan respons 4xx dan 5xx. Slow only hanya akan mengumpulkan permintaan dengan respons di atas ambang batas lambat yang ditetapkan. Anda juga dapat memfilter permintaan yang dikumpulkan dan dicatat berdasarkan penutupan khusus. Permintaan pra-penerbangan CORS tidak akan dikumpulkan secara default.
Baru di Clockwork 4.1, perintah artisan, pekerjaan antrian, dan pengujian kini juga dapat dikumpulkan, Anda harus mengaktifkannya di file konfigurasi.
Clockwork juga mengumpulkan jejak tumpukan untuk data seperti pesan log atau kueri database. 10 frame terakhir dari jejak dikumpulkan secara default. Anda dapat mengubah batas bingkai atau menonaktifkan fitur ini di file konfigurasi.
Kunjungi rute /clockwork
untuk melihat dan berinteraksi dengan data yang dikumpulkan.
Aplikasi akan menampilkan semua permintaan yang dieksekusi, yang berguna ketika permintaan tersebut tidak dibuat oleh browser, tetapi misalnya aplikasi seluler yang API-nya sedang Anda kembangkan.
Ekstensi alat pengembang browser juga tersedia untuk Chrome dan Firefox:
Clockwork kini memberi Anda opsi untuk menampilkan informasi permintaan dasar dalam bentuk toolbar di aplikasi Anda.
Toolbar sepenuhnya ditampilkan di sisi klien dan memerlukan instalasi perpustakaan javascript kecil.
Pelajari lebih lanjut di situs web Clockwork.
Anda dapat mencatat variabel apa pun melalui pembantu clock(), dari string sederhana hingga array atau objek, bahkan beberapa nilai:
clock (User:: first (), auth ()-> user (), $ username )
Fungsi pembantu clock()
mengembalikan argumen pertamanya, sehingga Anda dapat dengan mudah menambahkan pernyataan debugging sebaris ke kode Anda:
User:: create ( clock ( $ request -> all ()))
Jika Anda ingin menentukan tingkat log, Anda dapat menggunakan panggilan panjang:
clock ()-> info ( " User { $ username } logged in! " )
Timeline memberi Anda representasi visual runtime aplikasi Anda.
Untuk menambahkan acara ke timeline - mulai dengan deskripsi, jalankan kode yang dilacak, dan selesaikan acara. Api yang lancar tersedia untuk mengonfigurasi acara lebih lanjut.
// using timeline api with begin / end and fluent configuration
clock ()-> event ( ' Importing tweets ' )-> color ( ' purple ' )-> begin ();
. . .
clock ()-> event ( ' Importing tweets ' )-> end ();
Alternatifnya, Anda dapat menjalankan blok kode yang dilacak sebagai penutup. Anda juga dapat memilih untuk menggunakan konfigurasi berbasis array daripada api lancar.
// using timeline api with run and array - based configuration
clock ()-> event ( ' Updating cache ' , [ ' color ' => ' green ' ])-> run ( function () {
. . .
});
Baca selengkapnya tentang fitur yang tersedia di situs web Clockwork.