자체 호스팅 Adobe Commerce 원격 분석 및 도구 모니터링
모니터링 도구를 사용하면 항상 모든 것을 시청하기 위해 누군가에게 비용을 지불하지 않고도 변경 사항을 감지할 수 있습니다. 대부분의 도구를 사용하면 하드 드라이브의 공간이 부족한 경우와 같이 임계값이 충족되는 경우 경고 및 알림을 추가할 수 있습니다. 일부 도구는 부하 테스트 결과와 같이 추적 및 계산해야 하는 출력을 제공합니다. 도구에 관계없이 모든 도구에는 목적이 있으며 일관되게 사용할 경우 애플리케이션 관리에 도움이 될 수 있습니다. 모든 툴에 대한 무료 옵션이 있지만, 서비스 비용을 지불하면 보다 안정적인 지원이 보장되며 투자할 가치가 있을 수 있습니다. New Relic은 훨씬 더 많은 성능과 기능을 잠금 해제하는 무료 티어와 유료 버전을 제공하는 도구의 예입니다. DataDog 또는 Dynatrace과 같은 다른 프로그램도 있습니다. 당신에게 좋은 선택지를 찾아서 꾸준히 사용하세요.
인프라 모니터링
이러한 맥락에서 인프라라는 용어가 다소 느슨하게 사용되고 있다. 이 항목에서 이것은 사이트를 운영하는 데 사용되는 모든 서버, 프로세스 또는 디바이스를 의미합니다. For example:
- 하드 드라이브
- 사용
- RAM 사용
- 레디스
- 서버당 평균 로드
- 네트워크 트래픽
임계값을 조사하여 효과적인 경고를 생성합니다. 하드 드라이브 용량과 같은 중요한 사항에 할당하지 마십시오. 상황이 나빠질 때 여러 그룹에 알리도록 몇 가지를 설정합니다. 예를 들어, 다음은 하드 드라이브가 가득 찰 때의 규칙 세트입니다.
- DevOps 채널에 대한 70% Slack 알림
- 80% Slack 룸 DevOps 채널 및 DevOps 팀원의 이메일 배포 목록에 알림
- 90% Slack DevOps 채널 및 프로덕션 지원 Slack 채널, 이메일 DevOps 배포 그룹 및 엔지니어링 관리자에게 알립니다.
- 95% Slack DevOps 및 프로덕션 지원 Slack 채널, 모든 엔지니어의 이메일 배포 목록 및 엔지니어링 Director에 알림
- 98% 모든 P1 Slack 채널 및 DevOps 및 프로덕션 지원 Slack 채널, 엔지니어 및 Director 엔지니어링 및 기술 VP의 이메일 배포 목록 알림
팀에 알리는 방법에는 여러 가지가 있으므로, 신뢰할 수 있고 너무 많은 경고가 발생하지 않는 것을 선택하십시오. 문제가 발생할 때를 대비하여 경고를 예약하는 것이 중요합니다. 그렇지 않으면 경고를 무시하고 압도될 위험이 있습니다.
New Relic, DataDog 및 Dynatrace과 같은 대부분의 도구에서 따라야 할 좋은 템플릿이 종종 있습니다. 시간을 내어 애플리케이션에 가장 적합한 아이디어를 찾아보십시오. 클라우드 인프라의 Adobe Commerce을 사용하면 프로젝트가 프로비저닝될 때 경고 및 트리거가 적용됩니다. 이를 통해 Adobe 프로덕션 지원 팀은 가동 시간 및 고가용성 모니터링을 위해 도구를 적용할 수 있습니다.
대시보드를 사용하면 사이트의 빈번하거나 중요한 측면에 빠르게 액세스할 수 있습니다. 대시보드 항목은 페이지 보기 수, 호스트당 CPU 사용량, 모든 서버 목록, 페이지 로드 시간, 트랜잭션 기간 및 지난 며칠 동안의 합성 모니터링 테스트 결과로 구성될 수 있습니다. 이러한 대시보드는 문제가 있는 경우 빠르게 분류하거나 다른 사용자 경험에 대해 다른 대시보드를 설정할 수 있도록 빌드되어야 합니다. 여러 대시보드를 디자인하고 애플리케이션 모니터링을 실시간으로 볼 수 있기를 바랍니다. 특히 프로젝트의 소유자나 관리자가 사이트 운영 방식을 물었을 때 매우 만족하며, 몇 시간이 아니라 몇 초 만에 답을 찾을 수 있다.
로그 집계 및 순환
로그 파일은 요청 또는 MySQL 로그를 처리하는 애플리케이션 서버에서 찾을 수 있습니다. 실행하는 데 시간이 너무 오래 걸립니다. 로그의 어려운 점은 서로 분리되어 있으며 모든 로그를 찾는 경우 각 로그의 정보를 구문 분석하는 것이 번거로울 수 있다는 것입니다. 수년 전에 이 문제는 로그 집계 라는 기술을 사용하여 해결되었습니다. 이렇게 하면 모든 로그 위치에서 로그 파일을 중앙 위치로 푸시합니다. 파일이 이동되면 일부 소프트웨어가 이를 읽고 정보를 검색, 필터링 및 검토할 수 있는 방법을 제공할 수 있습니다. 이 방법은 올바른 방법을 찾기 위한 까다로운 과정일 수 있습니다. 여러 옵션이 있지만 운이 좋으면 모니터링 도구에서 New Relic과 같은 로그 파일을 읽고 집계할 수 있습니다. 좋은 도구를 찾음으로써 미래에 측정할 수 없는 시간을 절약할 수 있다. 사이트를 실행하고 작동하도록 모든 작업을 수행하는 단일 서버만 있는 경우가 아니라면 로그 집계가 필수적입니다. 이 기능은 DDoS 공격을 받고 있거나 트래픽 스파이크가 합법적으로 발생했는지 파악하거나 특정 요청이 실패한 이유를 조사할 때 특히 유용합니다.
로그에 대한 또 다른 핵심 사항은 회전이 발생하는지 확인하는 것입니다. 이는 이전에 하드 드라이브를 실수로 채워 사이트가 다운될 수 있는 run-away logs
과(와) 관련이 있습니다. 로그 파일이 1GB와 같은 특정 크기에 도달하면 로그 회전이 발생할 수 있습니다. logrotate
과(와) 같은 서버 수준 도구에서 자동으로 제거할 수 있습니다. 예를 들어 너무 큰 로그 파일은 1GB보다 커지면 제거하거나 90일 이상 오래된 로그 파일은 제거할 수 있습니다. 로그 정책을 정의하므로 리소스 제한 사항을 이해하는 것이 중요합니다.
맬웨어 검사
Adobe Commerce을 전담하는 많은 웹 사이트 호스팅 회사에는 알려진 악용 및 맬웨어 라이브러리가 있을 수 있습니다. 자동 또는 요청 시 검사를 제공해야 합니다. 이러한 기능이 효과적인 경우 반동적이며 새로운 맬웨어가 감지될 때만 작동합니다. 알려진 맬웨어에 대해 코드 및 데이터베이스를 확인할 수 있는 사전 예방 도구를 사용하는 것이 좋습니다. MageReport, Sansec 또는 Magento 맬웨어 스캐너와 같은 몇 가지 옵션을 사용할 수 있습니다. 외부에서 원격 스캔을 수행하거나 서버에 설치된 후 설치 및 업데이트/스캔/모니터링을 미리 수행할 수 있습니다. 이러한 기능은 Sansec과 같은 제공된 솔루션을 선택하는 경우 수천 개의 사이트를 설치하고 모니터링하므로 라이브러리가 지속적으로 업데이트되므로 매우 유용합니다. 새 맬웨어가 감지되면 해당 정보로 인한 이점을 모니터링하고 현재 감지되면 이에 대한 알림을 받게 됩니다.
고려할 몇 가지 무료 버전이 있지만 맬웨어의 경우 실제로 유료 솔루션을 고려해야 합니다. 이는 몇 분 동안 감염된 사이트와 몇 달 동안 감염된 사이트의 차이일 수 있습니다. 사이트에 악용하는 것은 엄청난 두통을 야기하며, 이것은 서비스에 대한 지불을 고려해야 하는 한 분야입니다.
Adobe 사이트 전체 분석 도구
사이트 전체 분석 도구는 Adobe Commerce 설치의 보안 및 운영을 보장하기 위한 자세한 시스템 통찰력과 권장 사항이 포함된 사전 예방적 셀프서비스 도구이자 중앙 저장소입니다. 24시간 연중무휴 실시간 성능 모니터링, 보고서 및 조언을 제공하여 잠재적인 문제를 식별하고 사이트 상태, 안전 및 애플리케이션 구성에 대한 가시성을 향상시킵니다. 이는 해결 시간을 줄이고 사이트 안정성과 성능을 개선하는 데 도움이 됩니다.
사이트 전체 분석 도구의 Recommendations 페이지에는 사이트에서 감지된 문제를 해결하기 위한 우수 사례를 기반으로 한 권장 사항이 나열됩니다. 권장 사항은 우선순위 PO에서 P4까지 정렬됩니다. 여기서 PO는 중요하고 P4는 낮습니다. 검색 결과에는 설명, 권장 사항, 사이트 영향, 근본 원인, 시나리오/사전 조건, 예상 결과 및 사용된 도구가 포함됩니다.
사이트 성능을 개선하기 위한 모범 사례에 대해 알아봅니다. 우선 순위에 따라 나열된 권장 사항을 추적하고 구현합니다.
프로젝트에 설치하는 방법에 대한 자세한 내용은 사이트 전체 분석 도구 설치 안내서를 참조하십시오.
SSL 모니터링
프로젝트에 대해 잊혀진 항목 중 하나는 SSL 인증서입니다. 그들은 1년에 한 번만 관심을 필요로 하기 때문에 그들을 잊는 것은 매우 쉽다. 보안 인증서가 만료되면 최신 브라우저가 경고 메시지를 표시하거나 사이트의 페이지 표시를 거부할 수 있습니다. 고객은 이러한 문제가 발생하는 경우 이메일을 보내거나 지원 팀에 문의할 수 있으며, 문제가 해결될 때까지 작동하지 않을 수 있습니다. 매분이 계산됩니다. 따라서 만료일이 미리 다가오고 있음을 인지하고 작업이 갱신되도록 하는 것이 사이트를 계속 가동하는 데 무엇보다 중요합니다. SSL 모니터링을 수행하는 방법에는 여러 가지가 있습니다. 사이트에 대한 합성 모니터링 도구를 사용하거나, Pingdom, Keychest 또는 Sucuri와 같은 무료 또는 저비용 도구를 사용하고 SSL 인증서 만료 경고를 제공하는 서비스를 구독하는 것이 좋습니다. 이러한 간단한 도구를 통해 사이트 인증서가 유효한지 확인하고 고객의 가동 중지 시간 위험을 줄일 수 있습니다.
자동화된 테스트
기능 테스트 또는 단위 테스트와 같은 자동화된 테스트를 수행하면 새로 도입된 코드에서 문제를 감지하는 데 도움이 되는 경우가 많습니다. Adobe Commerce 및 단위 테스트는 일반적으로 50% 미만이므로 이러한 테스트는 모든 것을 포착하지 못할 수 있습니다. 글쓰기와 테스트를 피해야 한다는 것은 아닙니다. 이러한 도구는 커밋되는 모든 것이 기본 제공 및 개발 팀에서 만드는 모든 사용자 정의 테스트에 부정적인 영향을 주지 않는 또 다른 안전 및 보안 계층을 추가하기 위한 것입니다. 각 배포에서 이러한 테스트를 실행함으로써 모든 주요 문제를 조기에 발견하고 프로덕션으로 가는 것을 허용하지 않습니다.
부하 테스트는 문제를 해결하기가 어려울 수 있습니다. 복잡성의 대부분은 프론트엔드가 어떻게 사용되고 구현되는지에서 비롯된다. 사이트에 Headless 프론트엔드가 있는 경우 GraphQL 및 REST API를 로드하여 테스트할 수 있습니다. 로드 테스트를 종료하는 방법은 사용자와 DevOps 팀이 결정합니다. 가능한 한 빨리 수행되는 각 로드 테스트가 프로젝트의 상태에 대한 통찰력을 제공한다는 것을 알고 있습니다. 부하 테스트 결과에 급격한 변화가 있는지 향후 테스트를 위한 벤치마크도 제공한다. 최신 코드 변경 내용을 검토하고 성능 영향 섹션을 찾아 개선할 수 있습니다.
Adobe Commerce에는 단위 테스트를 실행하는 방법을 이해하는 데 도움이 되는 유용한 지침이 있습니다. Adobe Developer 설명서 사이트의 응용 프로그램 테스트 안내서 에서 PHP 단위 테스트를 참조하세요.
기능 테스트에 대한 자세한 내용은 기능 테스트 프레임워크 소개를 참조하십시오.