traPtitech / traPtitech/NeoShowcase
アプリ変更ログ (Audit log)
Open
Nobody has claimed this yet.
area/controller
area/dashboard
kind/feature
size/L
- Dominant language
- Go
- Stars
- 62
- Forks
- 6
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 33
Description
- アプリ、リポジトリのデータの操作ログ
- ユーザー, adminが見る用
- アプリ、リポジトリ自体の作成・削除ログ
- アプリの作成・削除ログはリポジトリowner, adminが見る用
- リポジトリの作成・削除ログはadminが見る用
操作ログ系はそのままRDBのカラムに定義すると負債になりやすいので、操作ログ自体はTEXTカラムとかにJSON形式で保存して、パースはfail-safeに行う?
こんな感じ? foreign keyは無し
CREATE TABLE `repository_logs` (
id VARCHAR(22)
repository_id VARCHAR(22)
created_at DATETIME
type VARCHAR(100)
user_id VARCHAR(22)
description TEXT
);
CREATE TABLE `application_logs` (
id VARCHAR(22)
application_id VARCHAR(22)
created_at DATETIME
type VARCHAR(100)
user_id VARCHAR(22)
description TEXT
);
https://stackoverflow.com/questions/201527/best-design-for-a-changelog-auditing-database-table
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are named. Start by reviewing the existing application and repository persistence code, then clarify the audit-event schema, fail-safe parsing approach, and visibility rules; done means the agreed design is implemented for creation, deletion, and data-operation logs.
Written by the indexing model from the issue text.
Assessment
- Domain
- backend, databases
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100