This project is mirrored from https://gitee.com/NQL886/scope.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
  1. 27 Dec, 2017 1 commit
  2. 28 Nov, 2017 1 commit
  3. 21 Nov, 2017 2 commits
  4. 18 Nov, 2017 2 commits
    • Matthias Radestock's avatar
    • Matthias Radestock's avatar
      simplify render decoration · a82d245e
      Matthias Radestock authored
      Decoration is in fact quite a simple process that is applied on entry
      to rendering: we take a base renderer, transform it with a decorator,
      and then render a report with it. The new render.Decorate() function
      does exactly that.
      
      There is one exception. When rendering an individual node, e.g. for
      showing its details panel in the UI, we must not lose the node during
      decoration. That requires some special logic, which previously resided
      in the PreciousNodeRenderer, and now lives in handleNode.
      a82d245e
  5. 08 Nov, 2017 1 commit
  6. 15 Aug, 2017 1 commit
    • Roland Schilter's avatar
      Link scope-ui graphs clickable to prometheus queries (#2664) · 0d381a34
      Roland Schilter authored
      scope-app:
      * Adds `-app.metrics-graph` cli flag for configuring the base url to
      use for graph links; supports :orgID and :query placeholders
      * Assigns query URLs to existing metrics and appends empty metrics if missing
      
      scope-ui:
      * Extends <CloudFeature /> with option alwaysShow
      * Adds <CloudLink /> to simplify routing when in cloud vs not in cloud
      * Links metric graphs in the ui's node details view for all k8s
      toplogies and containers so far
      * Tracks metric graph click in mixpanel `scope.node.metric.click`
      * Uses percentages and MB for CPU/Memory urls
      * Passes timetravel timestamp to cortex in deeplink
      0d381a34
  7. 20 Jun, 2017 1 commit
    • Filip Barl's avatar
      Make API calls with time travel timestamp (#2600) · eb64d3f0
      Filip Barl authored
      * Node details fetching reports at proper timestamp.
      
      * Corrected all the relevant timestamps in the UI.
      
      * Renamed some state variables.
      
      * Time travel works for topologies list.
      
      * Added a whole screen overlay for time travel.
      
      * Polished the backend.
      
      * Make time travel work also with the Resource View.
      
      * Fixed the jest tests.
      
      * Fixed the empty view message for resource view.
      
      * Some naming polishing.
      
      * Addressed the comments.
      eb64d3f0
  8. 12 Jun, 2017 1 commit
    • Filip Barl's avatar
      Time travel control (#2524) · b6dfe254
      Filip Barl authored
      * Hacky working prototype.
      
      * Operate with time.Duration offset instead of fixed timestamp.
      
      * Polished the backend code.
      
      * Made a nicer UI component.
      
      * Small refactorings of the websockets code.
      
      * Fixed the backend tests.
      
      * Better websocketing and smoother transitions
      
      * Small styling refactoring.
      
      * Detecting empty topologies.
      
      * Improved error messaging.
      
      * Addressed some of David's comments.
      
      * Moved nodesDeltaBuffer to a global state to fix the paused status rendering bug.
      
      * Small styling changes
      
      * Changed the websocket global state variables a bit.
      
      * Polishing & refactoring.
      
      * More polishing.
      
      * Final refactoring.
      
      * Addressed a couple of bugs.
      
      * Hidden the timeline control behind Cloud context and a feature flag.
      
      * Addressed most of @davkal's comments.
      
      * Added mixpanel tracking.
      b6dfe254
  9. 15 Nov, 2016 1 commit
    • CarltonSemple's avatar
      Added container filters as CLI arguments · 9833a854
      CarltonSemple authored
      gofmt load_container_filters.go
      
      removed the environment variable for container label filters
      
      Added the --app.container-label-filter command line argument, and load_container_filters.go now uses the results from that
      
      Changed init() to InitializeTopologies()
      
      Changed init() to InitializeTopologies() so that it can be called after the container filters are loaded from the command line argument. init() executes before main() in prog/main.go, so the flag parsing isn't finished before init() is called
      
      Applied lint fixes
      
      fixed lint issues
      
      brought back the init function for api_topologies.go
      
      Addressed many of the PR comments, except escaping colons
      
      Renamed IsDesired to HasLabel in render/filters.go
      
      Allows for the user to escape colons
      
      added registry function for modifying the container filters
      
      created a separate function that parses the container filter flags
      
      simplified registry.addContainerFilters()
      
      addressed review comments
      
      switched API Topology Description IDs to constants
      
      addressed review comments
      
      joined constants
      
      added test functions
      
      addressed most of the review comments
      
      Changed containerLabelFilters to an array of APItopologyOptions, placing the parsing in the Set() function. Removed parsing from HasLabel in render/filters.go
      
      refactored code
      
      added test that applies to the container filtering by labels
      
      applied golint
      
      made Registry items private and added a MakeRegistry() function
      
      fixed usage of topologyRegistry.RendererForTopology
      
      Added container label filters by exclusion
      
      minor update to report_fixture
      
      Modified container labels test to use existing report
      
      I added labels to the existing containers in the fixed report for testing.
      
      refactored code
      
      refactored code
      
      further code refactoring
      
      addressed @ijsnellf's review comments
      
      unexported Registry, and reduced duplicate code
      
      addressed @ijsnellf's review comments
      
      Addressed review comments
      
      Addressed final review comments
      9833a854
  10. 26 Oct, 2016 1 commit
  11. 05 Oct, 2016 3 commits
  12. 09 Jun, 2016 1 commit
  13. 03 May, 2016 2 commits
  14. 28 Apr, 2016 1 commit
    • Paul Bellamy's avatar
      Fixing grouped node count for filtered children nodes · 3d3aed2b
      Paul Bellamy authored
      Squash of:
      
      * We have to keep all the container hostnames until the end so we can
        count how many we've filtered
      
      * Adding tests for ContainerHostnameRenderer and PodServiceRenderer with
        filters
      
      * Because we filter on image name we need the image name before
        filtering
      
      * Alternative approach to passing decorators.
      
      * Refactor out some of the decorator capture
      
      * Don't memoise decorated calls to Render
      
      * Fixing filtered counts on containers topology
      
        Tricky, because we need the filters to be silent sometimes (when they're
        in the middle), but not when they're at the top, so we take the "top"
        filter's stats. However, this means we have to compose all
        user-specified filters into a single Filter layer, so we can get all
        stats.
      
        There are no more Silent filters, as all filters are silent (unless they
        are at the top).
      
        Additionally, I clarified some of the filters as their usage/terminology
        was inconsistent and confused. Now Filter(IsFoo, ...) *keeps* only nodes
        where IsFoo is true.
      3d3aed2b
  15. 12 Apr, 2016 1 commit
  16. 06 Apr, 2016 1 commit
  17. 29 Mar, 2016 1 commit
    • Paul Bellamy's avatar
      Refactoring rendering to remove RenderableNode · 2c6b6e67
      Paul Bellamy authored
      Squash of:
      - use detailed.Summaries to render topology nodes
      - ban merging nodes of different topologies (they should be mapped)
      - need to prune parents when mapping node types
      - render container images by id if they have no name
      - remove separate render ids and prune parents in NewDerived*
      - don't render metrics/metadata for groups of nodes
      - fixing up tests
      - removing pending unit tests (for mapping.go, for now)
      - updating experimental dir for RenderableNode removal
      2c6b6e67
  18. 09 Mar, 2016 1 commit
  19. 03 Mar, 2016 1 commit
  20. 25 Feb, 2016 1 commit
  21. 24 Feb, 2016 2 commits
  22. 22 Feb, 2016 1 commit
    • Tom Wilkie's avatar
      Refactor app for multitenancy · 5f7f74bf
      Tom Wilkie authored
      - Add interfaces to allow for alternative implementations for Collector, ControlRouter
        and PipeRouter.
      - Pass contexts on http handlers to these interfaces.  Although not used by the current
        (local, in-memory) implementations, the idea is this will be used to pass headers to
        implementations which support multitenancy (by, for instance, putting an authenticating
        reverse proxy in form of the app, and then inspecting the headers of the request for
        a used id).
      5f7f74bf
  23. 16 Feb, 2016 1 commit
    • Alfonso Acosta's avatar
      Use github.com/ugorji/go/codec/ for wiring messages · 0d917b2d
      Alfonso Acosta authored
      * New encoding format:
        * Msgpack reports between probe<->app (smaller representation, faster to
          encode/decode).
        * Still use JSON between app<->UI (try to avoid making javascript deal with
          mspack).
      
        The app still suports publishing reports in both gob and JSON, not braking
        backwards compatibility.
      
      * Use compile-time generated marshallers/unmarshallers for higher performance. In
        order to be able to skip code-generation for certain types, I included
        https://github.com/2opremio/go-1/tree/master/codec/codecgen instead of
        upstream until https://github.com/ugorji/go/pull/139 is merged.
      
      * Encode/decode intermediate types using github.com/ugorji/go/codec.Selfer
        for higher performance and reducing garbage collection (no temporary buffers).
      0d917b2d
  24. 05 Feb, 2016 1 commit
  25. 19 Jan, 2016 1 commit
    • Paul Bellamy's avatar
      Details panel backend redesign · 56122dd0
      Paul Bellamy authored
      Megasquish:
        [app] remove unused edge endpoint
        [WIP] refactoring node details api endpoint
        [WIP] plumbing the children through the rendering process
        adding IDList.Remove and StringSet.Remove
        [WIP] working on adding parents to detailed node renderings
        WIP UI components with mock backend data for new details
        grouping children by type
        UI components for node details health and info
        metric formatters for details panel
        Column headers and links for details table
        [WIP] started on rendering node metadata and metrics in the detail view
        DetailedNode.LabelMajor -> DetailedNode.Label
        rendering decent labels for parents of detailed nodes
        render metrics onto the top-level detailed node
        removing dead code
        Links to relatives
        metrics have a Format not Unit
        Show more/less actions for tables and relatives
        adjusted metric formatter
        TopologyTagger should tag k8s topology nodes
        make renderablenode ids more consistent, e.g. container:abcd1234
        working on rendering correct summaries for each node
        adding report.Node.Rank, so that merging is independent of order
        rendering children and parents correctly
        output child renderableNode ids, so we can link to them
        add group field to metrics, so they can be grouped
        Refactored details health items to prepare for grouping
        add metrics to processNodeSummaries
        hide summary section if there is no data for it
        fixing up tests
        moving detailed node rendering into a separate package
        Node ID/Topology are fields not metadata
          - This way I think we don't have to care about Metadata being non-commutative.
          - ID and topology are still non-commutative, as I'm not sure how to sanely
        merge them, but it's possible we don't care.
        host memory usage is a filesize, not a percent
        working on fixing some tests
        adding children to hosts detail panel
          - Had to redo how parents are calculated, so that children wouldn't interfere with it
          - have to have the host at the end because it is non-commutative
        only render links for linkable children (i.e. not unconnected processes)
        resolving TODOs
        fixing up lint errors
        make nil a valid value for render.Children so tests are cleaner
        working on backend tests
        make client handle missing metrics property
        Stop rendering container image nodes with process summaries/parents
        fix parent link to container images
        Calculate parents as a set on report.Node (except k8s)
        refactoring detailed.NodeSummary stuff
        removing RenderableNode.Summary*, we already track it on report.Node
        working on tests
        add Columns field to NodeSummaryGroup
        fixing up render/topologies_test
        fix children links to container images
        get children of hosts rendering right
        working on host renderer tests
        Change container report.Node.ID to a1b2c3;<container>
        The id should be globally unique, so we don't need the host id.
          This lets the kubernetes probe return a container node with the pod id,
          which will get merged into the real containers with other reports. The
          catch is that the kubernetes api doesn't tell us which hostname the
          container is running on, so we can't populate the old-style node ids.
        change terminology of system pods and services
        Fix kubernetes services with no selector
        Fixes handling of kubernetes service, which has no pods
        fix parent links for pods/services
        refactor detailed metadata to include sets and latest data
        fixing up host rendering tests
        fleshing out tests for node metadata and metrics
        don't render container pseudo-nodes as processes
        Update test for id format change.
      56122dd0
  26. 14 Jan, 2016 1 commit
  27. 07 Dec, 2015 2 commits
  28. 10 Nov, 2015 1 commit
  29. 05 Nov, 2015 1 commit
  30. 29 Oct, 2015 1 commit
  31. 19 Oct, 2015 1 commit
  32. 08 Sep, 2015 1 commit
  33. 24 Aug, 2015 1 commit