Skip to content

Commit cf491ca

Browse files
Fixed logger service instantiation.
1 parent fc7d515 commit cf491ca

File tree

1 file changed

+18
-16
lines changed

1 file changed

+18
-16
lines changed

src/notifications/notifications.service.ts

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,17 @@ import { CreateSubscriptionDto } from './dto/create-subscription.dto';
99
import { MassNotificationDto } from './dto/mass-notification.dto';
1010
import webpush, { WebPushError } from 'web-push';
1111
import admin from 'firebase-admin';
12+
import { LoggerService } from '../common/logger/logger.service';
1213

1314
@Injectable()
1415
export class NotificationsService {
15-
private readonly logger = new Logger(NotificationsService.name);
16+
//private readonly logger = new Logger(NotificationsService.name);
1617

1718
constructor(
1819
private readonly db: DatabaseService,
1920
@Inject(WEB_PUSH) private readonly webPush: typeof webpush,
20-
@Inject(FIREBASE_ADMIN) private readonly firebase: typeof admin
21+
@Inject(FIREBASE_ADMIN) private readonly firebase: typeof admin,
22+
private readonly logger: LoggerService
2123
) {}
2224

2325
getPublicKey(): string | undefined {
@@ -60,17 +62,17 @@ export class NotificationsService {
6062
}
6163

6264
async sendNotification(subscription: SubscriptionRecord, notificationPayload: NotificationPayload): Promise<void> {
63-
this.logger.info(`Sending notification to subscription ${subscription.id} (type: ${subscription.type})`);
64-
this.logger.info(`Subscription endpoint: ${subscription.endpoint}`);
65-
this.logger.info(`Notification payload: ${JSON.stringify(notificationPayload)}`);
65+
this.logger.info(`Sending notification to subscription ${subscription.id} (type: ${subscription.type})`);
66+
this.logger.info(`Subscription endpoint: ${subscription.endpoint}`);
67+
this.logger.info(`Notification payload: ${JSON.stringify(notificationPayload)}`);
6668

6769
try {
6870
if (subscription.type === 'web') {
69-
this.logger.info(`Processing web push notification for subscription ${subscription.id}`);
71+
this.logger.info(`Processing web push notification for subscription ${subscription.id}`);
7072
if (!isWebKeys(subscription.keys)) {
7173
throw new Error(`Invalid keys for web subscription: ${JSON.stringify(subscription.keys)}`);
7274
}
73-
this.logger.info(`Web push keys are valid for subscription ${subscription.id}`);
75+
this.logger.info(`Web push keys are valid for subscription ${subscription.id}`);
7476
await this.webPush.sendNotification(
7577
{
7678
endpoint: subscription.endpoint,
@@ -81,9 +83,9 @@ export class NotificationsService {
8183
},
8284
JSON.stringify(notificationPayload)
8385
);
84-
this.logger.info(`Web push notification sent successfully for subscription ${subscription.id}`);
86+
this.logger.info(`Web push notification sent successfully for subscription ${subscription.id}`);
8587
} else if (subscription.type === 'fcm') {
86-
this.logger.info(`Processing FCM notification for subscription ${subscription.id}`);
88+
this.logger.info(`Processing FCM notification for subscription ${subscription.id}`);
8789
if (!isFcmKeys(subscription.keys)) {
8890
throw new Error(`Invalid keys for FCM subscription: ${JSON.stringify(subscription.keys)}`);
8991
}
@@ -113,7 +115,7 @@ export class NotificationsService {
113115
},
114116
},
115117
};
116-
this.logger.info(`FCM message payload: ${JSON.stringify(message)}`);
118+
this.logger.info(`FCM message payload: ${JSON.stringify(message)}`);
117119

118120
const response = await this.firebase.messaging().send(message);
119121
this.logger.info(
@@ -134,7 +136,7 @@ export class NotificationsService {
134136
if (subscription.type === 'web' && error instanceof WebPushError) {
135137
if (error.statusCode === 410) {
136138
await this.db.subscription.delete({ where: { id: subscription.id } });
137-
this.logger.info(`Removed expired web subscription id=${subscription.id}`);
139+
this.logger.info(`Removed expired web subscription id=${subscription.id}`);
138140
} else {
139141
this.logger.warn(`Web push send failed (id=${subscription.id}): ${error.statusCode} ${error.body}`);
140142
}
@@ -146,7 +148,7 @@ export class NotificationsService {
146148
error?.code === 'messaging/registration-token-not-registered'
147149
) {
148150
await this.db.subscription.delete({ where: { id: subscription.id } });
149-
this.logger.info(`Removed invalid FCM subscription id=${subscription.id}`);
151+
this.logger.info(`Removed invalid FCM subscription id=${subscription.id}`);
150152
} else {
151153
this.logger.warn(`FCM send failed (id=${subscription.id}): ${error?.code || error}`);
152154
}
@@ -156,11 +158,11 @@ export class NotificationsService {
156158
}
157159

158160
async sendMassNotification(dto: MassNotificationDto) {
159-
this.logger.info(`Starting mass notification process`);
160-
this.logger.info(`Mass notification DTO: ${JSON.stringify(dto)}`);
161+
this.logger.info(`Starting mass notification process`);
162+
this.logger.info(`Mass notification DTO: ${JSON.stringify(dto)}`);
161163

162164
const subscriptions = await this.listSubscriptions();
163-
this.logger.info(`Found ${subscriptions.length} subscriptions in database`);
165+
this.logger.info(`Found ${subscriptions.length} subscriptions in database`);
164166
this.logger.info(
165167
`Subscriptions details:`,
166168
subscriptions.map((sub) => ({
@@ -179,7 +181,7 @@ export class NotificationsService {
179181
badge: dto.badge || 'https://new.codebuilder.org/images/logo2.png',
180182
};
181183

182-
this.logger.info(`Prepared notification payload: ${JSON.stringify(payload)}`);
184+
this.logger.info(`Prepared notification payload: ${JSON.stringify(payload)}`);
183185

184186
try {
185187
const results = await Promise.allSettled(subscriptions.map((sub) => this.sendNotification(sub, payload)));

0 commit comments

Comments
 (0)