Ejemplo n.º 1
0
    if (!_.isEqual(nativeUrns, requestNativeUrns)) {
      this.setProperties({ nativeUrns: requestNativeUrns });

      const missingSelectedEntities = [...requestNativeUrns].filter(urn => !entities[urn]);
      if (missingSelectedEntities) {
        fetch(this._makeIdentityUrl(requestNativeUrns))
          .then(checkStatus)
          .then(this._jsonToEntities)
          .then(incoming => this._complete(requestContext, urns, incoming, 'identity'))
          .catch(error => this._handleError('identity', error));
      }
    }

    // rootcause search
    if (!_.isEqual(context, requestContext)) {
      const newEntities = filterObject(entities, (e) => urns.has(e.urn));

      if (!requestContext.urns || !requestContext.urns.size) {
        this.setProperties({ context: _.cloneDeep(requestContext), entities: newEntities });
        return;
      }

      const frameworks = new Set(['eventAnomaly', 'eventHoliday', 'eventIssue', 'eventExperiment', 'eventDeployment', 'metricRelated', 'eventChange', 'eventCustom']);

      this.setProperties({ context: _.cloneDeep(requestContext), entities: newEntities, pending: frameworks });

      frameworks.forEach(framework => {
        fetch(this._makeUrl(framework, requestContext))
          .then(checkStatus)
          .then(this._jsonToEntities)
          .then(incoming => this._complete(requestContext, urns, incoming, framework))
Ejemplo n.º 2
0
 function () {
   const { entities } = this.getProperties('entities');
   return filterObject(entities, (e) => e.type == 'event');
 }
Ejemplo n.º 3
0
 function () {
   const { entities, invisibleUrns, hoverUrns } = this.getProperties('entities', 'invisibleUrns', 'hoverUrns');
   const visibleUrns = [...hoverUrns].filter(urn => !invisibleUrns.has(urn));
   return filterObject(entities, (e) => visibleUrns.has(e.urn));
 }
Ejemplo n.º 4
0
 function () {
   const { entities, filteredUrns } = this.getProperties('entities', 'filteredUrns');
   return filterObject(entities, (e) => filteredUrns.has(e.urn));
 }