Apa cara yang baik untuk memonitor live shop?

41

Pendahuluan: Kami ingin memperluas pemantauan salah satu webshop kami karena penyedia mengalami masalah dengan konfigurasi PHP dan bagian-bagian dari webshop langsung mengalami crash (backend & checkout tidak berfungsi). Saya tidak ingin membahas tentang pindah ke penyedia lain di sini.

Karena kami sekarang sedang memikirkan kemungkinan untuk memantau webshop itu sendiri dan ketersediaan bagian-bagian tertentu (seperti "Apakah kasir berfungsi?"), Pertanyaannya adalah:

Alat dan strategi apa yang Anda sarankan untuk memantau situs web langsung?

Beberapa ide:

  • Apakah Anda secara otomatis memeriksa, apakah kasir masih berfungsi di situs web langsung?
  • Apa yang bisa menjadi parameter yang baik untuk dipantau untuk mendeteksi kegagalan? Pesanan Terakhir <1 hari yang lalu, login pengguna terakhir, ...
  • Menggunakan cron jobs: Memeriksa contoh untuk tanggal / waktu pemesanan terakhir dan jika sudah terlalu lama, kirim email dan / atau periksa secara manual apakah checkout masih berfungsi?
  • Menggunakan perangkat lunak / alat seperti Icinga, Uptime Robot, ...
  • Mengirim peringatan Email ke Admin, ...

Menantikan jawaban Anda :)

Anna Völkl
sumber
1
Bahkan jika ini terlihat sedikit "berdasarkan pendapat", saya benar-benar ingin melihat beberapa jawaban :).
Marius
Terima kasih @Marius, saya tahu ini agak subyektif, tetapi mungkin menarik untuk dibagikan :)
Anna Völkl
Pertanyaan Hebat, saya sudah bertanya-tanya hal yang sama! Terima kasih!
Wessel

Jawaban:

30

Ada beberapa hal yang bisa Anda lakukan otomatis.

  1. Jika bagian-bagian toko berhenti bekerja, Tes unit merupakan cara yang bagus untuk mendeteksi apakah fungsi-fungsi tertentu masih berfungsi.
  2. Untuk menguji frontend, saya menggunakan phpQuery pada server jauh untuk secara berkala mencari elemen DOM tertentu pada halaman kunci tertentu seperti 'apakah masih ada produk dalam daftar kategori', 'apakah ada footer * di beranda', dll.
  3. Siapkan cronjob sederhana yang menggerakkan host Anda untuk melihat apakah itu masih tersedia
  4. Gunakan umpan RSS pesanan asli Magento untuk memeriksa apakah pesanan masih masuk. Di toko lalu lintas tinggi tidak ada pesanan selama satu jam pada malam Jumat adalah indikator yang baik bahwa ada sesuatu yang salah :)
  5. Pantau Penyedia Layanan Pembayaran Anda. Di Belanda kami menggunakan iDeal untuk menangani pembayaran. Situs web ini menampilkan waktu aktif mereka, PSP Anda mungkin menyediakan layanan serupa

* jika tidak ada footer pada halaman yang dapat mengarah ke kesalahan PHP menghentikan rendering.

Ini adalah beberapa solusi yang kami gunakan. Mereka hanya perlu waktu pengaturan dan bebas untuk dijalankan.

Ngomong-ngomong, pertanyaan besar, saya benar-benar menantikan semua jawaban!

Sander Mangel
sumber
25

Saya akan mencocokkan jawaban fantastis Sander berikut ini, yang menganggap Anda telah mengatur dan menggunakan layanan pemantauan seperti Pingdom *:

  • Tonton konten di halaman; biasanya</html> tag penutup . Saya telah melihat begitu banyak before_body_endskrip gagal dengan pihak ke-3 (pengecualian tanpa tertangkap, dll.) Yang tidak terlihat oleh pengguna akhir tetapi mengembalikan 500 status - sangat buruk untuk SEO / Google / Alat Webmaster
  • Siapkan Alat Webmaster untuk memberi tahu Anda ketika kesalahan meningkat di atas ambang batas tertentu
  • Siapkan lansiran untuk SSL yang tidak valid di halaman
  • Siapkan lansiran untuk kesalahan javascript di halaman
  • Gunakan grup email / bcc untuk pembayaran email gagal, laporan kesalahan.
  • Hubungi orang-orang di pusat panggilan Anda dan pastikan mereka tahu cara menyaring masalah pengambilan gambar - mereka biasanya yang pertama menunjukkan ketika ada masalah.
  • Situs lambat sama buruknya dengan situs bawah. Pastikan lansiran Anda sensitif ketika situs Anda membutuhkan waktu lebih lama untuk memuat daripada biasanya.
  • Berlangganan feed twitter untuk semua layanan pihak ke-3 / host utama Anda. Host yang lebih besar biasanya memiliki pemicu Twitter ketika ada masalah. Anda dapat mengonfigurasi Twitter ke email / teks Anda ketika akun tertentu memposting.

Devops:

  • Siapkan Nagios untuk memonitor sistem kritis dan mengirimkan peringatan
  • Menyiapkan syslog atau Splunk (gratis # permintaan / hari) untuk mengumpulkan log dan mengeluarkan peringatan berdasarkan data log
  • Konfigurasikan skrip, pemeriksaan rutin peralatan jaringan Anda. Saya telah melihat (lebih dari satu kali) NIC kembali dan turun dari 1GB ke 10MB tanpa sepengetahuan kami.

Untuk tim yang lebih besar:

  • Siapkan server CI (Travis, Jenkins / Hudson, Capistrano) untuk memperingatkan Anda tentang kemungkinan kegagalan pengujian setelah melakukan.
  • Siapkan kait pra-komit dalam kontrol sumber Anda untuk menegakkan standar kode atau untuk memeriksa masalah mencolok seperti kode rusak
  • Seperti yang dikatakan Sander, siapkan sesuatu untuk memonitor umpan RSS untuk pesanan dan volume berdasarkan waktu - manfaatnya adalah tidak terpecah dan biasanya jika Anda menetapkan ambang notifikasi yang cukup rendah, masalah potensial akan segera memunculkannya.
  • Gunakan Selenium. BANYAK. Buat skrip tes yang dijalankan melalui proses checkout setiap satu atau dua jam.
  • Atur pengingat Kalender dan peringatan khusus untuk kedaluwarsa SSL

Anda akan menghasilkan BANYAK data dan kemungkinan positif palsu; jangan menjadi kebal terhadap peringatan.


Saya tidak berafiliasi dengan Pingdom. Saya suka produk mereka (gratis).

Philwinkle
sumber
8

Jika Anda hanya memiliki masalah dengan hoster Anda dan bukan pembayarannya, Anda dapat berpikir tentang menyiapkan produk, yang disembunyikan, menulis tes selenium, memasukkannya ke dalam keranjang, menambahkan kupon untuk membuatnya gratis dan kemudian melangkah keluar dari kasir.

Fabian Blechschmidt
sumber
1
bagus, saya suka ide produk gratis tersembunyi :-)
Anna Völkl
5

Sudah ada beberapa jawaban bagus di sini, tergantung pada pengaturan Anda. Saya menggunakan NewRelic untuk memantau server dan statistik transaksi, serta mengatur transaksi kunci untuk setiap langkah proses checkout. Dengan begitu, saya dapat melihat satu layar di ponsel saya dan menentukan apakah kami masih mendapatkan jumlah orang yang tepat untuk memeriksa seluruh proses, dan apakah mereka mendapatkan waktu tanggapan yang tepat. Jika saya melihat banyak throughput pada semuanya hingga langkah terakhir, saya tahu bahwa PayPal mungkin rusak karena tidak ada yang dapat memproses kartu mereka. Saya juga mendapatkan peringatan jika ada banyak kesalahan, waktu respons tidak aktif, dll. Anda tidak benar-benar membutuhkan NewRelic untuk melakukan ini, tetapi sangat sederhana dan cepat untuk diatur dan saya tidak punya waktu untuk membangun dasbor / aplikasi / sistem peringatan saya sendiri.

ddavidn
sumber
1
Saya setuju dengan Anda tentang karya NewRelic seperti pesona. Saya juga akan menambahkan bahwa menggunakan layanan seperti Pingdom adalah pilihan yang baik untuk memantau aksesibilitas server juga.
Eirik
5

Saya suka NewRelic dan PagerDuty untuk ini, mereka cukup sempurna dan memberi tahu Anda (email, teks, dan panggilan) dalam satu menit jika situs Anda atau bagian mana pun dari situs Anda sedang down. Ia bahkan memberi tahu jika CPU atau Memori Anda melampaui persentase penggunaan yang ditentukan sehingga situs tidak merespons.

  • Siapkan Relic Baru dengan semua halaman yang ingin Anda pantau dan pantau frekuensi. Contoh: Beranda, halaman 1 kategori apa saja, halaman 1 produk apa saja, halaman kereta, halaman checkout, dll.
  • Tambahkan pengguna (yang semuanya mendapat notifikasi), jadwal (hari dan waktu yang Anda pilih untuk menerima notifikasi), layanan (peringatan Relik Baru) dan kebijakan eskalasi pada peringatan PagerDuty dan jenis pemberitahuan yang Anda inginkan (email, teks, panggilan)

https://www.pagerduty.com/docs/guides/new-relic-integration-guide/

Penafian: Saya tidak berafiliasi dengan salah satu layanan di atas.

Kalpesh
sumber
3
  • Munin di sisi penyedia untuk mendapatkan nilai historis untuk semua server (LB, App, DB, Redis, dll) dan semua layanan (memori, memuat, dll.)
  • Nagios / Icinga aktif pada penyedia atau pihak lokal untuk pemantauan langsung di semua server
  • Pingdom untuk mengumpulkan waktu respons untuk url "penting" seperti halaman depan, checkout dll.
  • Pingdom untuk pemantauan pengguna nyata, Anda mendapatkan nilai yang mirip dengan APDEX dan melihat perkembangan historisnya
  • Pingdom untuk memeriksa url dan kontennya yang benar
  • Melaporkan dengan pesanan X terakhir dalam mode muat ulang otomatis. Dengan itu saya bisa melihat kemungkinan istirahat
  • Tes otomatis dengan Selenium pada sistem panggung yang identik. Saya bukan teman dari checkout otomatis pada sistem live saya. Anda akan mendapatkan masalah dengan akuntansi Anda nanti :)
  • Zapier dan Twilio untuk Email2SMS. Kesalahan kritis dikirim sebagai SMS ke telepon
  • freeboard.io dan dweet.io untuk menampilkan semuanya di dasbor yang bagus.
waltavista
sumber