실제 상점을 모니터링하는 좋은 방법은 무엇입니까?


41

서문 : 제공자가 PHP 구성에 문제가 있고 라이브 웹숍의 일부가 다운되어 (백엔드 및 체크 아웃이 작동하지 않음) 웹숍 중 하나의 모니터링을 확장하려고합니다. 다른 제공자로 이사하는 것에 대해서는 논의하고 싶지 않습니다.

웹숍 자체를 모니터링 할 수있는 가능성과 특정 부품의 가용성 (예 : "체크 아웃이 작동합니까?")을 고려할 때 문제는 다음과 같습니다.

라이브 웹 사이트를 모니터링하기 위해 어떤 도구와 전략을 제안 하시겠습니까?

몇 가지 아이디어 :

  • 체크 아웃이 여전히 라이브 웹 사이트에서 작동중인 경우 자동으로 확인합니까?
  • 장애를 감지하기 위해 모니터링 할 좋은 매개 변수는 무엇입니까? 마지막 주문 <1 일 전, 마지막 사용자 로그인 ...
  • cron 작업 사용 : 마지막 주문 날짜 / 시간 확인 및 너무 오래 전에 이메일을 보내거나 체크 아웃이 여전히 작동하는지 수동으로 확인 하시겠습니까?
  • Icinga, Uptime Robot 등과 같은 소프트웨어 / 도구 사용
  • 관리자에게 경고 이메일 보내기 ...

답변을 기대합니다 :)


1
이것이 "의견에 근거한"것처럼 보일지라도, 나는 몇 가지 대답을 정말로보고 싶어합니다. :).
Marius

@Marius에게 감사합니다. 주관적이라는 것을 알고 있지만 어쨌든 공유하는 것이 흥미로울 수도 있습니다 :)
Anna Völkl

좋은 질문, 나는 똑같은 것을 궁금해했습니다! 감사!
Wessel

답변:


30

자동화 할 수있는 몇 가지 작업이 있습니다.

  1. 작업장의 부품이 작동을 멈추는 경우 단위 테스트 는 특정 기능이 여전히 작동하는지 감지하는 좋은 방법입니다.
  2. 프론트 엔드를 테스트하기 위해 원격 서버에서 phpQuery 를 사용 하여 '카테고리 목록에 여전히 제품이 있습니다', '홈 페이지에 바닥 글이 있습니까? '와 같은 특정 주요 페이지에서 특정 DOM 요소를 정기적으로 찾습니다.
  3. 호스트가 여전히 사용 가능한지 확인하기 위해 호스트를 핑하는 간단한 cronjob을 설정하십시오.
  4. 주문이 아직 들어오는 지 확인하려면 기본 Magento 주문 RSS 피드를 사용하십시오. 트래픽이 많은 상점에서는 금요일 저녁에 한 시간 동안 주문이 없다는 것이 잘못된 것이 있다는 것을 나타내는 좋은 지표입니다. :)
  5. 결제 서비스 제공 업체를 모니터링하십시오. 네덜란드에서는 결제 처리에 iDeal을 사용합니다. 이 웹 사이트 는 가동 시간을 표시하며 PSP는 유사한 서비스를 제공 할 수 있습니다

* 페이지에 바닥 글이 없으면 PHP 오류 중지 렌더링을 가리킬 수 있습니다.

이들은 우리가 사용하는 몇 가지 솔루션입니다. 그들은 단지 약간의 설정 시간이 필요하며 자유롭게 실행할 수 있습니다.

그건 그렇고 좋은 질문, 나는 모든 대답을 정말로 고대하고 있습니다!


25

Pingdom *과 같은 모니터링 서비스를 설정하고 사용한다고 가정 한 Sander의 환상적인 답변은 다음과 같습니다.

  • 페이지에서 내용을 확인하십시오. 일반적 으로 닫는 </html>태그입니다. before_body_end최종 사용자에게는 보이지 않지만 500 개의 상태를 반환하는 타사 (제발되지 않은 예외 등)로 인해 많은 스크립트가 실패하는 것을 보았습니다 .SEO / Google / Webmaster Tools에 매우 나쁨
  • 오류가 특정 임계 값 이상으로 증가 할 때 알리도록 웹 마스터 도구를 설정하십시오.
  • 페이지에서 무효화 된 SSL에 대한 경고 설정
  • 페이지에서 자바 스크립트 오류에 대한 경고 설정
  • 결제 실패 이메일, 오류 보고서에 이메일 그룹 / 숨은 참조를 사용하십시오.
  • 콜센터 직원과 긴밀한 관계를 유지하고 스크린 샷 문제를 해결하는 방법을 알아야합니다. 일반적으로 문제가 발생한 시점을 가장 먼저 지적합니다.
  • 느린 사이트는 다운 사이트만큼 나쁩니다. 사이트로드 시간이 평소보다 오래 걸리는 경우 경고가 민감해야합니다.
  • 모든 주요 타사 / 호스트 서비스에 대한 트위터 피드를 구독하십시오. 더 큰 호스트에는 일반적으로 문제가있을 때 트위터 트리거가 있습니다. 특정 계정이 게시 될 때 이메일을 보내거나 문자 메시지를 보내도록 Twitter를 구성 할 수 있습니다.

데봇 :

  • 중요 시스템 모니터링 및 경고 전송을위한 Nagios 설정
  • 로그 데이터를 기반으로 로그를 집계하고 경고를 발행하도록 syslog 또는 Splunk (일부 특정 쿼리 수까지 무료)를 설정하십시오.
  • 네트워크 장비의 스크립트 된 일상 점검을 구성하십시오. NIC가 우리에게 알려지지 않은 1GB에서 10MB로 돌아가는 것을 보았습니다.

대규모 팀의 경우 :

  • 커밋 후 잠재적 인 테스트 실패를 경고하도록 CI 서버 (Travis, Jenkins / Hudson, Capistrano)를 설정하십시오.
  • 소스 제어에서 사전 커미트 후크를 설정하여 코드 표준을 시행하거나 깨진 코드와 같은 명백한 문제를 확인하십시오.
  • Sander가 말했듯이, RSS 피드를 시간과 시간에 따라 모니터링하도록 무언가를 설정하십시오. 여기서 이점은 캐시되지 않으며 일반적으로 알림 임계 값을 낮게 설정하면 잠재적 인 문제로 인해 즉시 트립됩니다
  • 셀레늄을 사용하십시오. 많이. 1 시간 또는 2 시간마다 체크 아웃 프로세스를 실행하는 스크립트 테스트를 수행하십시오.
  • SSL 만료에 대한 캘린더 미리 알림 및 특정 알림 설정

많은 데이터와 잠재적으로 오탐 (false positive)을 생성 할 것입니다. 경고에 면역되지 마십시오.


나는 Pingdom과 제휴하지 않습니다. 나는 그들의 (무료) 제품을 좋아합니다.


8

지불금이 아닌 호스팅 업체에만 문제가있는 경우 숨겨진 제품 설정에 대해 생각할 수 있습니다. 셀레늄 테스트를 카트에 넣고 쿠폰을 추가하여 무료로 만든 다음 결제를 진행하십시오.


1
좋은, 나는 숨겨진 무료 제품 아이디어를 좋아한다 :-)
Anna Völkl

5

설정에 따라 여기에 이미 훌륭한 답변이 있습니다. NewRelic을 사용하여 서버 및 트랜잭션 통계를 모니터링하고 체크 아웃 프로세스의 모든 단계마다 주요 트랜잭션을 설정합니다. 그렇게하면 전화기에서 단일 화면을보고 전체 프로세스를 통해 적절한 인원의 사람들이 체크 아웃하고 있는지, 응답 시간이 적절한 지 확인할 수 있습니다. 마지막 단계까지 모든 처리량이 많으면 아무도 카드를 처리 할 수 ​​없으므로 PayPal이 손상되었을 수 있습니다. 오류가 많거나 응답 시간이 꺼져있는 경우에도 알림이 표시됩니다.이 작업을 수행하기 위해 NewRelic이 반드시 필요하지는 않지만 매우 간단하고 빠르게 설정할 수 있으며 빌드 할 시간이 없었습니다. 내 자신의 대시 보드 / 앱 / 경고 시스템.


1
나는 NewRelic이 매력처럼 작동한다는 것에 동의합니다. 또한 Pingdom과 같은 서비스를 사용하는 것이 서버 액세스 가능성을 모니터링하는 좋은 옵션이라고 덧붙입니다.
Eirik

5

나는 이것을 위해 NewRelic과 PagerDuty를 좋아합니다. 사이트 나 사이트의 일부가 다운되면 간단하고 완벽합니다. 또한 CPU 또는 메모리가 지정된 사용률을 초과하여 사이트가 응답하지 않는지를 알려줍니다.

  • 모니터링하고 모니터링 할 모든 페이지로 New Relic을 설정하십시오. 예 : 홈페이지, 1 개의 카테고리 페이지, 1 개의 제품 페이지, 카트 페이지, 결제 페이지 등
  • PagerDuty 알림 및 원하는 알림 유형 (이메일, 문자, 전화)에 사용자 (모두 알림을받는 사용자), 일정 (알림 수신을 원하는 요일 및 시간), 서비스 (새 유물 알림) 및 에스컬레이션 정책 추가

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

면책 조항 : 나는 위의 서비스와 관련이 없습니다.


4

MageMonitoring- https: //github.com/magento-hackathon/Hackathon_MageMonitoring 서버 및 Magento 상태를 추적하고 예외 및 시스템 로그 등으로 이메일을 보내는 훌륭한 무료 오픈 소스 도구입니다.


3
  • 공급자 측의 Munin은 모든 서버 (LB, App, DB, Redis 등) 및 모든 서비스 (메모리,로드, IO 등)에 대한 기록 값을 가져옵니다.
  • 모든 서버에서 거의 실시간 모니터링로드를 위해 공급자 또는 로컬의 Nagios / Icinga
  • 프론트 페이지, 체크 아웃 등과 같은 "중요한"URL에 대한 응답 시간을 수집하는 Pingdom
  • 실제 사용자 모니터링을위한 Pingdom, 당신은 APDEX와 비슷한 가치를 얻고 역사적 발전을 볼 수 있습니다
  • URL과 올바른 내용을 확인하는 Pingdom
  • 자동 재로드 모드에서 마지막 X 주문으로보고합니다. 그것으로 나는 가능한 휴식을 볼 수 있습니다
  • 동일한 스테이지 시스템에서 Selenium을 사용한 자동화 된 테스트. 내 라이브 시스템에서 자동 체크 아웃의 친구가 아닙니다. 나중에 회계에 문제가 생길 것입니다 :)
  • Email2SMS 용 Zapier 및 Twilio. 심각한 오류는 SMS로 전화로 전송됩니다.
  • freeboard.io 및 dweet.io는 멋진 대시 보드에 모든 것을 표시합니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.