Ubuntu 18.04에 GlitchTip 설치 방법
GlitchTip은 응용 프로그램을 개발하여 세계에 배포한 후 사람들이 응용 프로그램을 사용할 때 발생하는 이벤트를 추적할 수 있도록 합니다.
사용자가 응용 프로그램을 사용할 때 오류가 발생하면, 오류에 대한 정보는 GlitchTip 배치에 전송됩니다.이렇게 하면 오류를 신속하게 발견하고 더 많은 사람들이 이 문제에 직면하기 전에 조치를 취해 오류를 복구할 수 있습니다.
사용자가 버그 보고서를 제출하는 것에 의존하는 것과 달리, 프로그램을 사용하는 사람이 오류를 터치하는 순간 빠르게 알 수 있습니다.
GlitchTip이란 무엇입니까?
GlitchTip은 보초병 오류 추적 플랫폼의 개원을 다시 실현한 것이다.
하지만 보초병과 달리 자유롭게 사용할 수 있다.
자체 VPS 서버에서 설정하고 배포할 수 있습니다.마치 우리가 본문 뒤에서 한 것과 같다.
오류 추적 프로그램을 설정한 후 GlitchTip 배치에 오류를 보낼 수 있도록 프로그램에 코드를 삽입해야 합니다.이를 SDK라고 합니다.
GlitchTip은 현재 다음 기술로 만든 응용 프로그램에 SDK를 제공합니다
GlitchTip 배포 시 여러 애플리케이션이 버그 보고서를 보낼 수 있습니다.
Ubuntu 18.04에 GlitchTip 설치
이 자습서에서는 Ubuntu 18.04 서버를 실행하는 AWS VPS에 docker의 GlitchTip을 배치합니다.
요구 사항
시작하기 전에 설치
Docker
docker compose 파일 가져오기
루트 디렉토리에 디렉토리 만들기
$ cd ~
$ mkdir glitchtip
$ cd glitchtip
다음에 현재 디렉터리에 'docker compose.yml' 라는 파일을 만듭니다.나는 나노를 사용할 것이다. 이것은 나의 서버의 기본 설정이며, 너도vim를 사용할 수 있다$ nano docker-compose.yml
이 파일에서 here docker compose 명령을 복사하고 붙여넣습니다.이 글을 쓸 때는 이렇습니다.version: "3.4"
x-environment:
&default-environment
DATABASE_URL: postgres://postgres:postgres@postgres:5432/postgres
SECRET_KEY: change_me
PORT: 8000
x-depends_on:
&default-depends_on
- postgres
- redis
services:
postgres:
image: postgres:13
environment:
POSTGRES_HOST_AUTH_METHOD: "trust"
restart: unless-stopped
redis:
image: redis
restart: unless-stopped
web:
image: glitchtip/glitchtip
depends_on: *default-depends_on
ports:
- "8000:8000"
environment: *default-environment
restart: unless-stopped
worker:
image: glitchtip/glitchtip
command: ./bin/run-celery-with-beat.sh
depends_on: *default-depends_on
environment: *default-environment
restart: unless-stopped
migrate:
image: glitchtip/glitchtip
depends_on: *default-depends_on
command: "./manage.py migrate"
environment: *default-environment
다섯 번째 줄에서 키를 더 안전한 키로 바꾸려고 노력하십시오.또한 파일 상단의 x-environment 부분에서 GlitchTip에
GLITCHTIP_MAX_EVENT_LIFE_DAYS
, REDIS_URL
, DATABASE_URL
및 기타 변수를 추가할 수 있습니다.구성 하위 머리글 아래에 있는 환경 변수 목록here을 봅니다.
우리의 상황에 대해 우리는 원형을 유지할 것이다.
다음에 파일을 저장하고 입력하십시오
$ docker-compose up -d
8000 포트에 응용 프로그램을 만듭니다.브라우저를 열고
your_ip_address:8000
로 이동합니다.GlitchTip 로그인 화면을 보실 수 있습니다.클릭하여 등록
로그인하면 대시보드로 가져가서 조직을 만들 수 있습니다
클릭하여 새 조직 만들기
조직의 이름을 입력합니다.저는 "Rex Org"을 사용합니다.
완성 후, 계속해서, 당신은 조직 화면에 들어갈 것입니다. 거기에서 당신은 이 조직을 위해 당신의 프로젝트를 관리할 수 있습니다
보시다시피 프로젝트가 없습니다. 간단한 노드를 위한 새 프로젝트를 만듭니다.js 응용 프로그램.위의 SDK에 나와 있는 것처럼 모든 종류의 응용 프로그램에 프로젝트를 만들 수 있습니다.
다음에 "새 프로젝트 만들기"를 누르십시오.
모니터링할 애플리케이션 유형을 선택합니다.이 예에서는 Node 를 선택합니다.js
다음에 Project name에 프로그램 이름을 입력하고create a team을 누르면 팀에 slug를 지정할 수 있습니다.나의 예에서 나는
rex-team
를 나의 단체 콧물벌레로 사용했다.마지막으로 프로젝트 만들기 단추를 누르십시오.
프로젝트를 만들면 GlitchTip을 모니터링 시스템으로 사용하기 위해 프로그램을 설정하는 방법을 설명하는 화면이 나타납니다.우리의 예에서 우리는 노드를 사용했다.이렇게 생겼어요.
현재 문제 탭에 있습니다.화면 오른쪽에는 DSN 링크가 표시됩니다.GlitchTip 배포에 오류가 발생했을 때 오류 보고서를 자동으로 보낼 수 있도록 응용 프로그램에서 사용해야 합니다.
현재 GlitchTip 프로젝트 설정이 있어서 프로그램의 오류를 감청할 수 있습니다.
간단한 노드를 만듭니다.js 응용 프로그램 및 GlitchTip 연결
간단한 노드를 계속 설치합시다.js 프로그램이 GlitchTip에 의해 추적되었는지 확인하기 위해 고의적인 오류를 추가합니다.
터미널로 돌아가서 메인 디렉터리로 돌아가서 node와npm가 설치되어 있는지 확인하십시오.
$ cd ~
$ mkdir app
$ cd app
$ npm init -y
app라는 디렉터리를 만들었습니다. 이 디렉터리에 들어가서 이 디렉터리를 노드로 초기화합니다.우리 프로그램의 js 디렉터리입니다.우리는 지금 소포가 하나 있다.json 파일이 자동으로 만들어집니다.다음에 우리는 두 개의 의존항을 설치할 것이다
$ npm install --save express "@sentry/node"
이것은 저희 노드 프로그램에 express 서버와 GlitchTip SDK를 설치합니다. GlitchTip 배치에 오류 보고서를 보낼 것입니다.모든 설치가 성공한 후, 우리의 소프트웨어 패키지는json 파일이 자동으로 의존항으로 업데이트됩니다
다음에
~/app/
디렉터리에 index라는 파일을 만듭니다.js.$ nano index.js
이 파일에서 우리는 두 개의 간단한 빠른 노선을 만들었다.하나는 잘못이 있고, 다른 하나는 잘못이 없다.GlitchTip 배치에서 DSN URL을 복사하고 붙여서 프로그램의 오류를 추적합니다.다음 코드를 색인에 붙여넣습니다.js 파일
const express = require('express');
const app = express();
app.get("/", (req, res) => {
res.json({ status: "success", message: "This is a GlitchTip test app" });
});
const port = process.env.PORT || 3000;
app.listen(port, () => { console.log(`Listening on port ${port}`); });
파일을 저장하고 터미널 유형node index.js
을 입력합니다.당신은 아래의 회답Listening on port 3000
을 받을 것입니다.브라우저를 열고 http://your_ip_address:3000로 이동합니다.다음 출력을 보실 수 있습니다
{
"status": "success",
"message": "This is a GlitchTip test app"
}
이것은 응용 프로그램이 잘 작동하고 있다는 것을 의미한다.다음은 이 간단한 프로그램을 고의로 실패하도록 설정하고 GlitchTip에 오류를 보냅니다.
색인을 편집합니다.js 파일을 다음 코드로 업데이트합니다
const express = require('express');
const Sentry = require("@sentry/node");
Sentry.init({ dsn: "http://1273aea6f3274bbaa26bec9e6d7ad511@localhost:8000/1" });
const app = express();
app.use(Sentry.Handlers.requestHandler());
app.get("/", (req, res) => {
res.json({ status: "success", message: "This is a GlitchTip test app" });
});
app.get("/error", (req, res) => {
throw new Error("My first GlitchTip error!");
});
app.use(Sentry.Handlers.errorHandler());
const port = process.env.PORT || 3000;
app.listen(port, () => { console.log(`Listening on port ${port}`); });
현재 우리는 http://your_ip_address:3000/error 노드를 방문할 때 잘못된 경로를 던졌다.node index.js
를 사용하여 프로그램을 다시 실행하고 브라우저를 열고 링크를 방문합니다http://your_ip_address:3000/error
.오류를 던진 걸 보셨을 거예요.
그런 다음 GlitchTip 배포로 돌아가 페이지를 새로 고칩니다.
이제 문제 탭에 표시되는 오류를 볼 수 있습니다.
이렇게이제 GlitchTip을 애플리케이션 모니터링 시스템으로 통합하는 데 성공했습니다.
오류를 클릭하여 검사할 수 있으며, 오류가 창고 추적에서 기원된 방법에 대한 정보를 얻을 수 있습니다.
오류가 발생한 시간, 보고된 횟수, 지난번 보고된 시간, 그리고 오류가 발생한 헤더 데이터, 노드 버전 등 더 많은 정보를 추적할 수 있습니다.
GlitchTip을 사용하여 오류 추적 외에도 실시간 모니터링을 수행할 수 있습니다.프로그램이 작동을 멈추면 알림을 받고 신속하게 행동할 수 있도록 가끔씩 프로그램에 ping을 보냅니다.
Reference
이 문제에 관하여(Ubuntu 18.04에 GlitchTip 설치 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/rexthony/how-to-install-glitchtip-on-ubuntu-1804-2k52텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)