@degel_lc/logger 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -5
- package/dist/index.d.ts +13 -2
- package/package.json +6 -2
package/README.md
CHANGED
|
@@ -171,10 +171,12 @@ logs/
|
|
|
171
171
|
|
|
172
172
|
## Sentry連携
|
|
173
173
|
|
|
174
|
-
`@sentry/node
|
|
174
|
+
`@sentry/node` および `@sentry/nextjs` との連携が可能です。error/fatalレベルのログを自動的にSentryに送信します。
|
|
175
|
+
|
|
176
|
+
### Node.js サーバー
|
|
175
177
|
|
|
176
178
|
```typescript
|
|
177
|
-
import { initializeLogger, setSentryModule } from '@
|
|
179
|
+
import { initializeLogger, setSentryModule } from '@degel_lc/logger';
|
|
178
180
|
import * as Sentry from '@sentry/node';
|
|
179
181
|
|
|
180
182
|
// Sentryの初期化(アプリケーション側で行う)
|
|
@@ -188,12 +190,26 @@ await initializeLogger({
|
|
|
188
190
|
|
|
189
191
|
// Sentryモジュールをインジェクト
|
|
190
192
|
setSentryModule(Sentry);
|
|
193
|
+
```
|
|
191
194
|
|
|
192
|
-
|
|
193
|
-
|
|
195
|
+
### Next.js(instrumentation.ts)
|
|
196
|
+
|
|
197
|
+
```typescript
|
|
198
|
+
import { initializeLogger, setSentryModule } from '@degel_lc/logger';
|
|
199
|
+
import * as Sentry from '@sentry/nextjs';
|
|
200
|
+
|
|
201
|
+
export async function register() {
|
|
202
|
+
await initializeLogger({
|
|
203
|
+
logDir: './logs',
|
|
204
|
+
enableSentry: true,
|
|
205
|
+
});
|
|
206
|
+
|
|
207
|
+
// @sentry/nextjs も対応
|
|
208
|
+
setSentryModule(Sentry);
|
|
209
|
+
}
|
|
194
210
|
```
|
|
195
211
|
|
|
196
|
-
**注意**: `@sentry/node
|
|
212
|
+
**注意**: `@sentry/node` または `@sentry/nextjs` はオプショナルなpeerDependencyです。Sentry連携を使用する場合は別途インストールが必要です。
|
|
197
213
|
|
|
198
214
|
## 開発
|
|
199
215
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as _sentry_node from '@sentry/node';
|
|
2
1
|
import { Level } from 'pino';
|
|
3
2
|
|
|
4
3
|
/**
|
|
@@ -55,8 +54,20 @@ interface LogTypeConfig {
|
|
|
55
54
|
}
|
|
56
55
|
/**
|
|
57
56
|
* Sentryモジュールの型
|
|
57
|
+
* @sentry/node と @sentry/nextjs の両方で使用可能
|
|
58
58
|
*/
|
|
59
|
-
|
|
59
|
+
interface SentryModule {
|
|
60
|
+
/**
|
|
61
|
+
* 例外をSentryに送信
|
|
62
|
+
*/
|
|
63
|
+
captureException: (error: unknown, hint?: {
|
|
64
|
+
extra?: Record<string, unknown>;
|
|
65
|
+
}) => string;
|
|
66
|
+
/**
|
|
67
|
+
* メッセージをSentryに送信
|
|
68
|
+
*/
|
|
69
|
+
captureMessage: (message: string, captureContext?: unknown) => string;
|
|
70
|
+
}
|
|
60
71
|
/**
|
|
61
72
|
* ロガー設定オプション
|
|
62
73
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@degel_lc/logger",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "phsk関連プロジェクト共通のpino-basedロギングライブラリ",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -44,11 +44,15 @@
|
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
46
|
"pino": "^9.0.0",
|
|
47
|
-
"@sentry/node": "^8.0.0 || ^9.0.0"
|
|
47
|
+
"@sentry/node": "^8.0.0 || ^9.0.0 || ^10.0.0",
|
|
48
|
+
"@sentry/nextjs": "^8.0.0 || ^9.0.0 || ^10.0.0"
|
|
48
49
|
},
|
|
49
50
|
"peerDependenciesMeta": {
|
|
50
51
|
"@sentry/node": {
|
|
51
52
|
"optional": true
|
|
53
|
+
},
|
|
54
|
+
"@sentry/nextjs": {
|
|
55
|
+
"optional": true
|
|
52
56
|
}
|
|
53
57
|
},
|
|
54
58
|
"dependencies": {
|