private createFilterPattern()

in source/services/dashboardHandler/lib/CWWidgetFactory.ts [106:133]


  private createFilterPattern(instances: string[]): string {
    try {
      logger.debug({
        label: "WidgetFactory/createFilterPattern",
        message:
          "creating filter pattern for log insight queries for workload dashboard",
      });
      // creating filter pattern for log insights query
      let i = 0;
      let filter = "filter ";
      instances.forEach((instance) => {
        if (i === 0) filter += `@logStream = "${instance}"`;
        else filter += ` OR @logStream = "${instance}"`;
        i += 1;
      });
      logger.debug({
        label: "WidgetFactory/createFilterPattern",
        message: `generated filter: ${filter}`,
      });
      return filter;
    } catch (e) {
      logger.debug({
        label: "WidgetFactory/createFilterPattern",
        message: e,
      });
      throw new Error("error creating filter pattern for the workload");
    }
  }