-
Notifications
You must be signed in to change notification settings - Fork 1
DB 설계
Dongmin Shin edited this page Dec 19, 2020
·
9 revisions
User
{
name: {
type: String,
trim: true,
},
email: {
type: String,
trim: true,
},
pwd: {
type: String,
},
imageURL: {
type: String,
trim: true,
},
oauthId: {
type: String,
trim: true,
},
status: {
type: Boolean,
},
projects: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Projects',
},
],
recentProject: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Projects',
}
}
Project
{
title: {
type: String,
required: true,
trim: true,
},
description: {
type: String,
},
framework: {
type: String,
},
dsn: {
type: String,
},
owner: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User',
},
members: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'User',
},
],
issues: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Issue',
},
],
},
{
timestamps: true,
}
ErrorEvent
{
name: String,
message: String,
stack: String,
content: String,
issueId: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Issue',
},
projectId: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Project',
},
errArea: mongoose.Schema.Types.Mixed,
date: {
type: Date,
default: Date.now,
},
tags: {},
hash: String,
}
Issue
{
name: {
type: String,
required: true,
trim: true,
},
resolved: {
type: Boolean,
default: false,
},
message: {
type: String,
},
stack: {
type: String,
},
projectId: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Project',
},
groupHash: {
type: String,
},
errorEvents: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'ErrorEvent',
},
],
assignee: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User',
},
comments: [CommentSchema],
},
{
timestamps: true,
}
Comment
{
description: {
type: String,
required: true,
},
writer: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User',
},
targetIssue: {
type: String,
},
},
{
timestamps: true,
}
Alert
alertType: {
type: mongoose.Schema.Types.Mixed,
required: true,
},
issue: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Issue',
default: null,
},
from: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Issue',
default: null,
},
to: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Issue',
default: null,
},
project: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Project',
required: true,
},
},
{
timestamps: true,
}
``
📈 퍼포먼스 모니터링 📉
- HOME
- 프로젝트 개요 및 요구사항
- 프로젝트 설계
- DB 설계
- 프로젝트 구조
- 기술 특장점
- 피드백 & 추후 과제
- docker-compose로 mongodb 설치
- sentry sdk에서 보내는 실제 json구조
- acent sdk 설치 방법
🤞 Rules 🤞
🗒 스프린트 계획 🗒
🙋♂️ 데일리 스크럼 🙋♀️
📚 회고 📚