subscribe(domainEvents) {
        domainEvents.subscribe(MemberPageViewEvent, async (event) => {
            try {
                await this.cachedUpdateLastSeenAt(event.data.memberId, event.data.memberLastSeenAt, event.timestamp);
            } catch (err) {
                logging.error(`Error in LastSeenAtUpdater.MemberPageViewEvent listener for member ${event.data.memberId}`);
                logging.error(err);
            }
        });

        // Only disable if explicitly set to false in config
        const shouldUpdateForClickTracking = !this._config || this._config.get('backgroundJobs:clickTrackingLastSeenAtUpdater') !== false;
        if (shouldUpdateForClickTracking) {
            domainEvents.subscribe(MemberLinkClickEvent, async (event) => {
                try {
                    await this.cachedUpdateLastSeenAt(event.data.memberId, event.data.memberLastSeenAt, event.timestamp);
                } catch (err) {
                    logging.error(`Error in LastSeenAtUpdater.MemberLinkClickEvent listener for member ${event.data.memberId}`);
                    logging.error(err);
                }
            });
        }

        domainEvents.subscribe(MemberCommentEvent, async (event) => {
            try {
                await this.updateLastCommentedAt(event.data.memberId, event.timestamp);
            } catch (err) {
                logging.error(`Error in LastSeenAtUpdater.MemberCommentEvent listener for member ${event.data.memberId}`);
                logging.error(err);
            }
        });

        domainEvents.subscribe(EmailOpenedEvent, async (event) => {
            try {
                await this.updateLastSeenAtWithoutKnownLastSeen(event.memberId, event.timestamp);
            } catch (err) {
                logging.error(`Error in LastSeenAtUpdater.EmailOpenedEvent listener for member ${event.memberId}, emailRecipientId ${event.emailRecipientId}`);
                logging.error(err);
            }
        });
    }
Subscribe to events of this domainEvents service
@param {any} domainEvents The DomainEvents service