Skip to content

chore!: remove stdout logging functionality#37114

Merged
tassoevan merged 8 commits intorelease-8.0.0from
chore/stdout
Oct 20, 2025
Merged

chore!: remove stdout logging functionality#37114
tassoevan merged 8 commits intorelease-8.0.0from
chore/stdout

Conversation

@juliajforesti
Copy link
Contributor

@juliajforesti juliajforesti commented Oct 1, 2025

ARCH-1799

Proposed changes (including videos or screenshots)

Issue(s)

Steps to test or reproduce

Further comments

Summary by CodeRabbit

  • Refactor

    • Removed the Server Logs viewer and Logs tab from Admin > View Logs; Analytics is now the only tab.
    • Removed stdout streaming, its public event/endpoint, related permissions, and runtime log-queue behavior.
    • Deleted the Log_View_Limit setting and added a migration to remove existing setting data.
  • Chores

    • Bumped several core packages to major versions.

@juliajforesti juliajforesti added this to the 8.0.0 milestone Oct 1, 2025
@dionisio-bot
Copy link
Contributor

dionisio-bot bot commented Oct 1, 2025

Looks like this PR is ready to merge! 🎉
If you have any trouble, please check the PR guidelines

@changeset-bot
Copy link

changeset-bot bot commented Oct 1, 2025

🦋 Changeset detected

Latest commit: 91ac680

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 42 packages
Name Type
@rocket.chat/rest-typings Major
@rocket.chat/ddp-client Major
@rocket.chat/logger Major
@rocket.chat/meteor Major
@rocket.chat/api-client Patch
@rocket.chat/core-services Patch
@rocket.chat/http-router Patch
@rocket.chat/models Patch
@rocket.chat/ui-contexts Major
@rocket.chat/web-ui-registration Major
@rocket.chat/account-service Patch
@rocket.chat/authorization-service Patch
@rocket.chat/ddp-streamer Patch
@rocket.chat/federation-matrix Patch
@rocket.chat/omnichannel-services Patch
@rocket.chat/presence Patch
rocketchat-services Patch
@rocket.chat/livechat Patch
@rocket.chat/mock-providers Patch
@rocket.chat/freeswitch Patch
@rocket.chat/omnichannel-transcript Patch
@rocket.chat/presence-service Patch
@rocket.chat/queue-worker Patch
@rocket.chat/license Patch
@rocket.chat/media-calls Patch
@rocket.chat/omni-core-ee Patch
@rocket.chat/federation-service Patch
@rocket.chat/network-broker Patch
@rocket.chat/cron Patch
@rocket.chat/instance-status Patch
@rocket.chat/omni-core Patch
@rocket.chat/uikit-playground Patch
@rocket.chat/fuselage-ui-kit Major
@rocket.chat/gazzodown Major
@rocket.chat/ui-avatar Major
@rocket.chat/ui-client Major
@rocket.chat/ui-video-conf Major
@rocket.chat/ui-voip Major
@rocket.chat/core-typings Major
@rocket.chat/apps Patch
@rocket.chat/model-typings Patch
@rocket.chat/pdf-worker Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 1, 2025

Walkthrough

Removes stdout logging/streaming: deletes the log queue implementation, stdout streamer, related Notifications stream and permission checks, REST endpoint and typings, ServerLogs UI and tab, Log_View_Limit setting and watcher, related tests and i18n keys; adds a migration to delete the setting and a changeset bumping related packages.

Changes

Cohort / File(s) Summary of changes
Release / Changeset
.changeset/tough-baboons-wash.md
Adds a changeset describing removal of stdout logging and bumps Rocket.Chat-related packages to new major versions.
Server API & REST typings
apps/meteor/app/api/server/v1/misc.ts, packages/rest-typings/src/v1/misc.ts
Removes the /v1/stdout.queue route handler and its REST typing.
Client UI & routes
apps/meteor/client/views/admin/viewLogs/ServerLogs.tsx, apps/meteor/client/views/admin/viewLogs/ViewLogsPage.tsx, apps/meteor/client/views/admin/routes.tsx, apps/meteor/client/views/admin/sidebarItems.ts, apps/meteor/tests/e2e/page-objects/admin.ts
Deletes ServerLogs component, removes Logs tab/conditional rendering, renames route/path from /admin/reports to /admin/analytic-reports, and updates sidebar/test enum accordingly.
Logger queue and exports
packages/logger/src/logQueue.ts, packages/logger/src/getPino.ts, packages/logger/src/index.ts
Removes the log queue module and its exports; removes side-effect import that initialized the queue in getPino.
Server stream & notifications
apps/meteor/server/stream/stdout.ts, apps/meteor/server/modules/notifications/notifications.module.ts, packages/ddp-client/src/types/streams.ts
Removes stdout stream module, transforms and emission; deletes NotificationsModule stdout streamer creation/permission config; removes stdout event signature from streamer typings.
Settings & configuration
apps/meteor/server/settings/logs.ts, apps/meteor/server/configuration/configureLogLevel.ts
Deletes Log_View_Limit setting and removes its watcher that called setQueueLimit; retains Log_Level handling.
Migration
apps/meteor/server/startup/migrations/index.ts, apps/meteor/server/startup/migrations/v324.ts
Adds migration v324 to delete the Log_View_Limit setting and wires it into startup migrations.
Tests
apps/meteor/tests/end-to-end/api/miscellaneous.ts
Removes /stdout.queue end-to-end tests and an unused methodCall import.
i18n locales
packages/i18n/src/locales/* (many locale files)
Removes the Log_View_Limit translation key across many locale JSON files (reduces available localization entries).

Sequence Diagram(s)

sequenceDiagram
  autonumber
  participant App as Application
  participant Logger as Logger (pino)
  participant Queue as Log Queue (removed)
  participant Stream as Stdout Streamer (removed)
  participant Notif as Notifications (removed)
  participant Client as ServerLogs UI (removed)

  rect rgb(245,248,250)
    Note over App,Client: Previous flow (before changes)
    App->>Logger: write(log)
    Logger->>Queue: enqueue(log)
    Queue-->>Stream: provide queued entries
    Stream-->>Notif: emit 'stdout'
    Notif-->>Client: push via DDP stream
    Client->>Client: render/auto-scroll logs
  end

  rect rgb(250,250,245)
    Note over App,Logger: New flow (after changes)
    App->>Logger: write(log)
    Logger--x Queue: no enqueue
    Logger--x Stream: no stdout emission
    Client--x Client: ServerLogs UI removed
  end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Suggested reviewers

  • scuciatto
  • tassoevan
  • sampaiodiego

Poem

A rabbit nibbled the stdout thread,
Hid the queue where old logs fled.
Tabs trimmed down and tests ran light,
Migration hopped in—setting out of sight.
Thump-thump—quiet console tonight. 🐇✨

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Linked Issues Check ❓ Inconclusive The linked issue ARCH-1799 "Remove stdout" provides only a minimal title with no substantive requirements, descriptions, or acceptance criteria to validate against. While the PR changes appear comprehensive in removing stdout logging functionality—including the API route, streaming module, React components, queue logic, and related settings—the absence of explicit requirements in the linked issue prevents conclusive verification that all necessary changes have been implemented and no requirements have been missed. The changeset is extensive and logically coherent with the title objective, but the lack of documented requirements creates ambiguity about completeness. Request that the linked issue ARCH-1799 include explicit requirements and acceptance criteria for the stdout removal work, such as a list of components, endpoints, and settings to be removed. This would enable verification that the PR implementation is complete and correct. Alternatively, if these requirements exist in a design document or specification, reference them directly in the issue or PR description.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The PR title "chore!: remove stdout logging functionality" directly and clearly summarizes the main change present in the changeset. The title accurately reflects the substantial removals across multiple files including the stdout streaming API route, ServerLogs React component, logging queue functionality, and related configuration. The title uses appropriate semantic versioning convention with the exclamation mark indicating breaking changes, and the phrasing is concise and specific enough for quick scanning of commit history.
Out of Scope Changes Check ✅ Passed All code changes in this PR are directly related to removing stdout logging functionality. The removals include the stdout.queue API route, ServerLogs component, stdout streaming module, and log queue functionality. Related changes such as removing the Log_View_Limit setting and its translations, updating navigation routes from /admin/reports to /admin/analytic-reports (to reflect removal of the ServerLogs tab), and removing the stdout streamer from NotificationsModule are all logical consequences of eliminating stdout logging. The migration file for deleting the Log_View_Limit setting is also properly scoped to this feature removal.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/stdout

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Oct 1, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 70.27%. Comparing base (d072acd) to head (91ac680).
⚠️ Report is 1 commits behind head on release-8.0.0.

Additional details and impacted files

Impacted file tree graph

@@                Coverage Diff                @@
##           release-8.0.0   #37114      +/-   ##
=================================================
+ Coverage          70.24%   70.27%   +0.03%     
=================================================
  Files               2999     2999              
  Lines             102301   102301              
  Branches           18221    18222       +1     
=================================================
+ Hits               71861    71892      +31     
+ Misses             28576    28540      -36     
- Partials            1864     1869       +5     
Flag Coverage Δ
e2e 57.90% <100.00%> (+0.02%) ⬆️
unit 71.36% <ø> (+0.02%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@juliajforesti juliajforesti marked this pull request as ready for review October 6, 2025 16:57
@juliajforesti juliajforesti requested review from a team as code owners October 6, 2025 16:57
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (2)
apps/meteor/client/views/admin/viewLogs/ViewLogsPage.tsx (1)

11-25: Consider removing the single-tab Tabs component.

Since only the Analytics tab remains after removing the Logs tab, the Tabs component and tab state serve no interactive purpose. The UI would be cleaner without the non-interactive single-tab element.

Apply this diff to simplify the component:

 const ViewLogsPage = (): ReactElement => {
 	const { t } = useTranslation();
-	const [tab, setTab] = useState('Analytics');
 
 	return (
 		<Page background='tint'>
 			<PageHeader title={t('Reports')} />
-			<Margins blockEnd={24}>
-				<Tabs>
-					<Tabs.Item onClick={() => setTab('Analytics')} selected={tab === 'Analytics'}>
-						{t('Analytic_reports')}
-					</Tabs.Item>
-				</Tabs>
-			</Margins>
 			<PageContent>
 				<AnalyticsReports />
 			</PageContent>
apps/meteor/server/startup/migrations/v324.ts (1)

8-10: Consider removing unnecessary Promise.all wrapper.

The Promise.all wrapper is unnecessary when awaiting a single promise. This is a minor clarity improvement.

Apply this diff to simplify:

 	async up() {
-		await Promise.all([Settings.deleteOne({ _id: 'Log_View_Limit' })]);
+		await Settings.deleteOne({ _id: 'Log_View_Limit' });
 	},
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Jira integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between d072acd and 5a7a3e2.

📒 Files selected for processing (16)
  • .changeset/tough-baboons-wash.md (1 hunks)
  • apps/meteor/app/api/server/v1/misc.ts (0 hunks)
  • apps/meteor/client/views/admin/viewLogs/ServerLogs.tsx (0 hunks)
  • apps/meteor/client/views/admin/viewLogs/ViewLogsPage.tsx (1 hunks)
  • apps/meteor/server/configuration/configureLogLevel.ts (1 hunks)
  • apps/meteor/server/modules/notifications/notifications.module.ts (0 hunks)
  • apps/meteor/server/settings/logs.ts (0 hunks)
  • apps/meteor/server/startup/migrations/index.ts (1 hunks)
  • apps/meteor/server/startup/migrations/v324.ts (1 hunks)
  • apps/meteor/server/stream/stdout.ts (0 hunks)
  • apps/meteor/tests/end-to-end/api/miscellaneous.ts (1 hunks)
  • packages/ddp-client/src/types/streams.ts (0 hunks)
  • packages/logger/src/getPino.ts (0 hunks)
  • packages/logger/src/index.ts (0 hunks)
  • packages/logger/src/logQueue.ts (0 hunks)
  • packages/rest-typings/src/v1/misc.ts (0 hunks)
💤 Files with no reviewable changes (10)
  • packages/logger/src/logQueue.ts
  • apps/meteor/server/stream/stdout.ts
  • apps/meteor/app/api/server/v1/misc.ts
  • packages/logger/src/index.ts
  • packages/ddp-client/src/types/streams.ts
  • apps/meteor/server/modules/notifications/notifications.module.ts
  • packages/logger/src/getPino.ts
  • apps/meteor/client/views/admin/viewLogs/ServerLogs.tsx
  • apps/meteor/server/settings/logs.ts
  • packages/rest-typings/src/v1/misc.ts
🔇 Additional comments (3)
apps/meteor/server/configuration/configureLogLevel.ts (1)

1-16: LGTM!

The removal of the Log_View_Limit watcher and setQueueLimit import is clean and consistent with the broader stdout logging removal. The Log_Level functionality is correctly preserved.

apps/meteor/tests/end-to-end/api/miscellaneous.ts (1)

8-8: No references to methodCall found in miscellaneous.ts.

apps/meteor/server/startup/migrations/index.ts (1)

31-31: Confirm missing v323 migration
No file or references for v323 found in apps/meteor/server/startup/migrations; ensure skipping v323 is intentional or add the missing migration.

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
.changeset/tough-baboons-wash.md (1)

8-8: Tighten wording (imperative + Oxford comma).

Use imperative style and add the comma for consistency with release notes.

-Removes stdout logging functionality, related components and settings
+Remove stdout logging functionality, related components, and settings
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Jira integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 5a7a3e2 and ca7c071.

📒 Files selected for processing (1)
  • .changeset/tough-baboons-wash.md (1 hunks)
🔇 Additional comments (1)
.changeset/tough-baboons-wash.md (1)

1-8: Add brief BREAKING note and migration hints.

Since these are major bumps, add a one-liner about removed surfaces (API/UI/setting) to aid consumers.

Suggested addition after the description:

  • BREAKING: Removes stdout streaming API and Server Logs UI; deletes Log_View_Limit setting. Remove uses of stdout stream, REST endpoints, and update any scripts relying on them.

To verify no leftovers remain, run:

tassoevan
tassoevan previously approved these changes Oct 9, 2025
@tassoevan tassoevan added the stat: QA assured Means it has been tested and approved by a company insider label Oct 13, 2025
@dionisio-bot dionisio-bot bot added the stat: ready to merge PR tested and approved waiting for merge label Oct 13, 2025
ggazzo pushed a commit that referenced this pull request Nov 6, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Nov 12, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Nov 12, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Nov 13, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Nov 18, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 2, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 2, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 2, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 2, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 2, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 9, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 10, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 15, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 17, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 17, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 17, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 18, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 18, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 18, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 18, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 19, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 19, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 19, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 20, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 20, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 20, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
ggazzo pushed a commit that referenced this pull request Dec 20, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
dougfabris pushed a commit that referenced this pull request Dec 20, 2025
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
gaolin1 pushed a commit to gaolin1/medsense.webchat that referenced this pull request Jan 6, 2026
Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

stat: QA assured Means it has been tested and approved by a company insider stat: ready to merge PR tested and approved waiting for merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants