Skip to content

ably logs subscribe misses events — subscribes to wrong event names on [meta]log #411

@mclark-ably

Description

@mclark-ably

Bug

ably logs subscribe produces no output even when events are actively being published to [meta]log.

Root cause

In src/commands/logs/subscribe.ts, the command subscribes to [meta]log

const logsChannelName = `[meta]log`;

using named events:

const logTypes = flags.type
  ? [flags.type]
  : [
      "channel.lifecycle",
      "channel.occupancy",
      "channel.presence",
      "connection.lifecycle",
      "push.publish",
    ];

for (const logType of logTypes) {
  channel.subscribe(logType, callback);
}

However, messages on [meta]log do not have event names like channel.lifecycle, connection.lifecycle, etc.

As a result, none of the named subscriptions ever match, and no events are received.

Steps to reproduce

Run both commands simultaneously while webhook/integration issues are occurring on the app:

# Receives events correctly
ably channels subscribe "[meta]log"

# Receives nothing
ably logs subscribe

Expected behaviour

ably logs subscribe should receive all events published to [meta]log.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions