Giter Club home page Giter Club logo

zipkin-ui's People

Contributors

abesto avatar adriancole avatar apottere avatar fgcui1204 avatar llinder avatar rogeralsing avatar sroze avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zipkin-ui's Issues

Add popover information about the spans

When hovering a span, we could show a popover/tooltip about the span data.
This will make it more lightweight than the original UI which requires you to open up a dialog for this

Installation Broken

I ran the installation commands on npm version 4.1.2

$ npm install --dev
$ npm install typescript -g
$ npm start

Everything looks good when I run the commands. But when I open in a web browser it all goes wrong. See the following error in the console window.

Unhandled Promise rejection: Template parse errors:
"let-" is only supported on template elements. ("<ng-template ngFor [ngForOf]="parts" [ERROR ->]let-part let-isOdd="odd"><span *ngIf="isOdd" class="{{highlightClass}}">{{part}}</span><ng-template ["): NgbHighlight@0:37
"let-" is only supported on template elements. ("<ng-template ngFor [ngForOf]="parts" let-part [ERROR ->]let-isOdd="odd"><span *ngIf="isOdd" class="{{highlightClass}}">{{part}}</span><ng-template [ngIf]="!i"): NgbHighlight@0:46
'ng-template' is not a known element:
1. If 'ng-template' is an Angular component, then verify that it is part of this module.
2. If 'ng-template' is a Web Component then add "CUSTOM_ELEMENTS_SCHEMA" to the '@NgModule.schemas' of this component to suppress this message. ("rOf]="parts" let-part let-isOdd="odd"><span *ngIf="isOdd" class="{{highlightClass}}">{{part}}</span>[ERROR ->]<ng-template [ngIf]="!isOdd">{{part}}</ng-template></ng-template>"): NgbHighlight@0:124
'ng-template' is not a known element:
1. If 'ng-template' is an Angular component, then verify that it is part of this module.
2. If 'ng-template' is a Web Component then add "CUSTOM_ELEMENTS_SCHEMA" to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<ng-template ngFor [ngForOf]="parts" let-part let-isOdd="odd"><span *ngIf="isOdd" class="{{highlightC"): NgbHighlight@0:0 ; Zone: <root> ; Task: Promise.then ; Value: SyntaxError {__zone_symbol__error: Error: Template parse errors:
"let-" is only supported on template elements. ("<ng-template ngFor [n……} Error: Template parse errors:
"let-" is only supported on template elements. ("<ng-template ngFor [ngForOf]="parts" [ERROR ->]let-part let-isOdd="odd"><span *ngIf="isOdd" class="{{highlightClass}}">{{part}}</span><ng-template ["): NgbHighlight@0:37
"let-" is only supported on template elements. ("<ng-template ngFor [ngForOf]="parts" let-part [ERROR ->]let-isOdd="odd"><span *ngIf="isOdd" class="{{highlightClass}}">{{part}}</span><ng-template [ngIf]="!i"): NgbHighlight@0:46
'ng-template' is not a known element:
1. If 'ng-template' is an Angular component, then verify that it is part of this module.
2. If 'ng-template' is a Web Component then add "CUSTOM_ELEMENTS_SCHEMA" to the '@NgModule.schemas' of this component to suppress this message. ("rOf]="parts" let-part let-isOdd="odd"><span *ngIf="isOdd" class="{{highlightClass}}">{{part}}</span>[ERROR ->]<ng-template [ngIf]="!isOdd">{{part}}</ng-template></ng-template>"): NgbHighlight@0:124
'ng-template' is not a known element:
1. If 'ng-template' is an Angular component, then verify that it is part of this module.
2. If 'ng-template' is a Web Component then add "CUSTOM_ELEMENTS_SCHEMA" to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR ->]<ng-template ngFor [ngForOf]="parts" let-part let-isOdd="odd"><span *ngIf="isOdd" class="{{highlightC"): NgbHighlight@0:0
    at SyntaxError.ZoneAwareError (eval at <anonymous> (http://localhost:3000/polyfills.js:4062:1), <anonymous>:992:33)
    at SyntaxError.BaseError [as constructor] (eval at <anonymous> (http://localhost:3000/vendor.js:2877:1), <anonymous>:25:16)
    at new SyntaxError (eval at <anonymous> (http://localhost:3000/vendor.js:165:1), <anonymous>:162:16)
    at TemplateParser.parse (eval at <anonymous> (http://localhost:3000/vendor.js:582:1), <anonymous>:169:19)
    at JitCompiler._compileTemplate (eval at <anonymous> (http://localhost:3000/vendor.js:1740:1), <anonymous>:380:68)
    at eval (eval at <anonymous> (http://localhost:3000/vendor.js:1740:1), <anonymous>:263:62)
    at Set.forEach (native)
    at JitCompiler._compileComponents (eval at <anonymous> (http://localhost:3000/vendor.js:1740:1), <anonymous>:263:19)
    at createResult (eval at <anonymous> (http://localhost:3000/vendor.js:1740:1), <anonymous>:145:19)
    at ZoneDelegate.invoke (eval at <anonymous> (http://localhost:3000/polyfills.js:4062:1), <anonymous>:334:26)
    at Zone.run (eval at <anonymous> (http://localhost:3000/polyfills.js:4062:1), <anonymous>:126:43)
    at eval (eval at <anonymous> (http://localhost:3000/polyfills.js:4062:1), <anonymous>:713:57)
    at ZoneDelegate.invokeTask (eval at <anonymous> (http://localhost:3000/polyfills.js:4062:1), <anonymous>:367:31)
    at Zone.runTask (eval at <anonymous> (http://localhost:3000/polyfills.js:4062:1), <anonymous>:166:47)
    at drainMicroTaskQueue (eval at <anonymous> (http://localhost:3000/polyfills.js:4062:1), <anonymous>:546:35)
consoleError @ zone.js?fad3:522
handleUnhandledRejection @ zone.js?fad3:527
_loop_1 @ zone.js?fad3:562
drainMicroTaskQueue @ zone.js?fad3:566
zone.js?fad3:524 ZoneAwareError {__zone_symbol__error: Error: Uncaught (in promise): Error: Template parse errors:
"let-" is only supported on template ele……}
consoleError @ zone.js?fad3:524
handleUnhandledRejection @ zone.js?fad3:527
_loop_1 @ zone.js?fad3:562
drainMicroTaskQueue @ zone.js?fad3:566

UX. expander button or expandable rows?

Currently, there are expander buttons to show more information about each span.
Should this be replaced by allowing the entire row to be clicked to expand?

Aggregate view of relationships + timings

There is currently a Dependency view, which is interesting, but Zipkin has a lot more data for which it could provide visibility.

I'm thinking of an aggregated view of parent-child relationships (including multiplicity) and timings.

There are a few ways you could arrange the data. This is my stab for a hypothetical system with X, Y, and Z:

X --2.5--> Y (8ms) --2.0--> Z (2ms)
 \
  \--0.5--> Z (6ms)

Each X has 2.5 Y children (8ms each) and 0.5 Z children (6ms each), and each Y child of X has 2.0 Z children (2ms each).

This doesn't show sequences (not sure how to "average" those), just parent-child chains and timings.

Unable to build project

Hi
I'm newbie in type script . I'm following the readme.md but it does not generate final js.

I'm calling

$ npm install --dev
$ npm install typescript -g
$ npm run build  <!---- fails here
Condition always true [./~/jquery/dist/jquery.js:9778,0]

ERROR in /Users/i303813/Code/paas/__POC__/zipkin-ui/typings/globals/dagre-d3/index.d.ts
(5,44): error TS2305: Module 'Dagre' has no exported member 'DagreFactory'.

ERROR in /Users/i303813/Code/paas/__POC__/zipkin-ui/typings/globals/dagre-d3/index.d.ts
(17,32): error TS2503: Cannot find namespace 'd3'.

ERROR in /Users/i303813/Code/paas/__POC__/zipkin-ui/typings/globals/dagre-d3/index.d.ts
(17,52): error TS2503: Cannot find namespace 'd3'.

ERROR in /Users/i303813/Code/paas/__POC__/zipkin-ui/typings/globals/dagre-d3/index.d.ts
(23,57): error TS2503: Cannot find namespace 'd3'.

ERROR in /Users/i303813/Code/paas/__POC__/zipkin-ui/typings/globals/dagre-d3/index.d.ts
(23,100): error TS2305: Module 'Dagre' has no exported member 'Edge'.

ERROR in /Users/i303813/Code/paas/__POC__/zipkin-ui/typings/globals/dagre-d3/index.d.ts
(25,21): error TS2503: Cannot find namespace 'd3'.
Child html-webpack-plugin for "index.html":

My setup

__POC__/zipkin-ui (master)$npm version
{ 'zipkin-ui': '0.1.0',
  npm: '3.10.7',
  ares: '1.10.1-DEV',
  http_parser: '2.7.0',
  icu: '57.1',
  modules: '48',
  node: '6.6.0',
  openssl: '1.0.2h',
  uv: '1.9.1',
  v8: '5.1.281.83',
  zlib: '1.2.8' }

Traces graph will not show with io.zipkin.java:zipkin:1.16.2 data

Use test data, zipkin ui will show Traces graph in the page. @adriancole
In production env, zipkin java client(io.zipkin.java:zipkin:1.16.2) push data to zipkin server. Use the zipkin server data from server api, zipkin ui will not show Traces graph.

The two data has this difference:

  • io.zipkin.java:zipkin:1.16.2 generated data without annotations fragment.

Why test data has annotations fragment?
Why the data format is not compatible with java client sdk?

manually generated test data:

 [
  [
    {
      "traceId": "2e0456da58cc75f9",
      "id": "2e0456da58cc75f9",
      "name": "get",
      "timestamp": 1490150337461000,
      "duration": 1429325,
      "annotations": [
        {
          "timestamp": 1490150337461000,
          "value": "sr",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        },
        {
          "timestamp": 1490150338890325,
          "value": "ss",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        }
      ],
      "binaryAnnotations": [
        {
          "key": "http.status_code",
          "value": "200",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        },
        {
          "key": "http.url",
          "value": "/a",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        }
      ]
    },
    {
      "traceId": "2e0456da58cc75f9",
      "id": "4b722eee46e4746a",
      "name": "get",
      "parentId": "2e0456da58cc75f9",
      "timestamp": 1490150338031000,
      "duration": 845960,
      "annotations": [
        {
          "timestamp": 1490150338031000,
          "value": "cs",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        },
        {
          "timestamp": 1490150338034000,
          "value": "sr",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        },
        {
          "timestamp": 1490150338876000,
          "value": "ss",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        },
        {
          "timestamp": 1490150338876960,
          "value": "cr",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        }
      ],
      "binaryAnnotations": [
        {
          "key": "http.status_code",
          "value": "200",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        },
        {
          "key": "http.url",
          "value": "http://localhost:8081/b",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        },
        {
          "key": "http.url",
          "value": "/b",
          "endpoint": {
            "serviceName": "brave-webmvc-example",
            "ipv4": "192.168.99.1"
          }
        }
      ]
    }
  ]
]

zipkin java client generated in production , version is io.zipkin.java:zipkin:1.16.2

[
  [
    {
      "traceId": "6af75a41cbc8fa6b",
      "id": "6af75a41cbc8fa6b",
      "name": "rxjava",
      "timestamp": 1490197838019000,
      "duration": 300,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        }
      ]
    }
  ],
  [
    {
      "traceId": "142fae58c051ca37",
      "id": "142fae58c051ca37",
      "name": "rxjava",
      "timestamp": 1490197837975000,
      "duration": 260,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        }
      ]
    }
  ],
  [
    {
      "traceId": "bde840912978c224",
      "id": "bde840912978c224",
      "name": "rxjava",
      "timestamp": 1490197837519000,
      "duration": 234,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        }
      ]
    }
  ],
  [
    {
      "traceId": "ae8498806dfe58da",
      "id": "ae8498806dfe58da",
      "name": "rxjava",
      "timestamp": 1490197837476000,
      "duration": 307,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        }
      ]
    }
  ],
  [
    {
      "traceId": "07e4141638a6e28e",
      "id": "07e4141638a6e28e",
      "name": "rxjava",
      "timestamp": 1490197837019000,
      "duration": 260,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        }
      ]
    }
  ],
  [
    {
      "traceId": "2e6814b541e8231d",
      "id": "2e6814b541e8231d",
      "name": "rxjava",
      "timestamp": 1490197836975000,
      "duration": 301,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        }
      ]
    }
  ],
  [
    {
      "traceId": "0139afc6b257a8b9",
      "id": "0139afc6b257a8b9",
      "name": "rxjava",
      "timestamp": 1490197836520000,
      "duration": 347,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        }
      ]
    }
  ],
  [
    {
      "traceId": "c721154db6cc9862",
      "id": "c721154db6cc9862",
      "name": "rxjava",
      "timestamp": 1490197836475000,
      "duration": 285,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        }
      ]
    }
  ],
  [
    {
      "traceId": "84ca6a570036d469",
      "id": "84ca6a570036d469",
      "name": "rxjava",
      "timestamp": 1490197836019000,
      "duration": 291,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.81.10",
            "port": 8080
          }
        }
      ]
    }
  ],
  [
    {
      "traceId": "02a7b30a458f5ac0",
      "id": "02a7b30a458f5ac0",
      "name": "rxjava",
      "timestamp": 1490197835976000,
      "duration": 275,
      "binaryAnnotations": [
        {
          "key": "lc",
          "value": "rxjava",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        },
        {
          "key": "thread",
          "value": "RxIoScheduler-2",
          "endpoint": {
            "serviceName": "spring-cloud-zuul",
            "ipv4": "10.239.35.9",
            "port": 8080
          }
        }
      ]
    }
  ]
]

UI: Collecting Spans with no annotations crashes the UI

From @rogeralsing on September 8, 2016 20:5

If you collect a root span with no annotations on (which is ofcourse incorrect) the UI breaks with a null reference exception at the find trace screen, and thus making it impossible to find any trace at all.

This is ofc an edgecase that souldnt occur, but if someone sends corrupt data to Zipkin, it would be nice if things continue to work as expected.

Copied from original issue: openzipkin/zipkin#1278

Cannot read property 'timestamp' of undefined

Hi.
Zipkin UI starts with error
error_handler.js?934c:54 EXCEPTION: Cannot read property 'timestamp' of undefined ErrorHandler.handleError @ error_handler.js?934c:54 error_handler.js?934c:59 ORIGINAL STACKTRACE: ErrorHandler.handleError @ error_handler.js?934c:59 error_handler.js?934c:60 TypeError: Cannot read property 'timestamp' of undefined at eval (webpack-internal:///165:117:70) at Array.sort (native) at Array.sort (webpack-internal:///875:21:15) at Trace.sortTrace (webpack-internal:///165:117:23) at eval (webpack-internal:///165:120:23) at Array.forEach (<anonymous>) at Trace.sortTrace (webpack-internal:///165:119:27) at eval (webpack-internal:///165:120:23) at Array.forEach (<anonymous>) at Trace.sortTrace (webpack-internal:///165:119:27) at Trace.getSortedSpans (webpack-internal:///165:80:14) at new Trace (webpack-internal:///165:55:32) at eval (webpack-internal:///165:157:65) at Array.map (<anonymous>)
If i understand correctly expected structure of traces (response of api/v1/traces) is ..{"traceId": "trace", ..., "**annotations**"} .. - annotations is mandatory.
But in my case trace looks like [ [ { "traceId": "fca49abacae88255", "id": "fca49abacae88255", "name": "", "timestamp": 1509704101447000, "duration": 55875, "annotations": [ { "timestamp": 1509704101502875, "value": "ss", "endpoint": { "serviceName": "", "ipv4": "", "port": 8080 } } ] }, { "traceId": "fca49abacae88255", "id": "8382a3fc6365f507", "name": "", "parentId": "fca49abacae88255", "timestamp": 1509704101455000, "duration": 22310, "binaryAnnotations": [ { "key": "OUTPUT_MESSAGE", "value": "", "endpoint": { "serviceName": "", "ipv4": "", "port": 8080 } }, { "key": "lc", "value": "unknown", "endpoint": { "serviceName": "", "ipv4": "", "port": 8080 } } ] } ] ]
"Traditional" ui works fine with that trace

build error with git version 7924f67baccc137666272a6121738135217acc92

zipkin-ui build error with git version 7924f67bac

when I git clone the master code, I do below:

  1. npm install
  2. npm run build

in the second step, console show errors with compile.

➜  zipkin-ui git:(master) npm run build

> [email protected] build /Users/cuizheng/Documents/Code/charlescui.git/zipkin-ui
> gulp build

[20:11:34] Using gulpfile ~/Documents/Code/charlescui.git/zipkin-ui/gulpfile.js
[20:11:34] Starting 'build'...
/Users/cuizheng/Documents/Code/charlescui.git/zipkin-ui/node_modules/extract-text-webpack-plugin/index.js:184
		throw new Error("Breaking change: extract now only takes a single argument. Either an options " +
		^

Error: Breaking change: extract now only takes a single argument. Either an options object *or* the loader(s).
Example: if your old code looked like this:
    ExtractTextPlugin.extract('style-loader', 'css-loader')

You would change it to:
    ExtractTextPlugin.extract({ fallback: 'style-loader', use: 'css-loader' })

The available options are:
    use: string | object | loader[]
    fallback: string | object | loader[]
    publicPath: string

    at Function.ExtractTextPlugin.extract (/Users/cuizheng/Documents/Code/charlescui.git/zipkin-ui/node_modules/extract-text-webpack-plugin/index.js:184:9)
    at Object.<anonymous> (/Users/cuizheng/Documents/Code/charlescui.git/zipkin-ui/config/webpack.common.js:34:43)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (module.js:498:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/cuizheng/Documents/Code/charlescui.git/zipkin-ui/config/webpack.prod.js:4:20)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (module.js:498:17)
[20:11:35] 'build' errored after 750 ms
[20:11:35] Error in plugin 'gulp-shell'
Message:
    Command `webpack --config config/webpack.prod.js --progress --colors --profile --bail` failed with exit code 1

npm ERR! Darwin 16.3.0
npm ERR! argv "/Users/cuizheng/Documents/Code/nvm/versions/node/v7.2.0/bin/node" "/Users/cuizheng/Documents/Code/nvm/versions/node/v7.2.0/bin/npm" "run" "build"
npm ERR! node v7.2.0
npm ERR! npm  v3.10.9
npm ERR! code ELIFECYCLE
npm ERR! [email protected] build: `gulp build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] build script 'gulp build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the zipkin-ui package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     gulp build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs zipkin-ui
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls zipkin-ui
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/cuizheng/Documents/Code/charlescui.git/zipkin-ui/npm-debug.log

I fixed the error and go on build, come on with other error.
So I fixed all errors with current version code, and modify the below file.

[main] aaa2b99e8246abe975e6f47a9e8814ffef6db101 - commit 1 of 110                                                          10%
commit aaa2b99e8246abe975e6f47a9e8814ffef6db101
Refs: [master], {origin/master}, {origin/HEAD}, 0.0.1-4-gaaa2b99
Author:     崔峥
AuthorDate: Wed Mar 22 20:30:14 2017 +0800
Commit:     崔峥
CommitDate: Wed Mar 22 20:30:14 2017 +0800

    fix 'npm run build' error
---
 config/webpack.common.js | 16 +++++++++++-----
 config/webpack.prod.js   | 15 ++++++++++-----
 package.json             |  7 +++++--

then compile success in the folder target/classes/zipkin-ui/

Better rendering for spans with only client-side annotations

This is awesome, thanks for the work! I used this to visualize some of our internal data and noticed that the span display isn't so helpful when server spans are missing. Specifically, they display like this:

commit

It would be nice if the horizontal position was preserved when only client spans were present. Maybe the whole span could be a gray bar, just correctly positioned horizontally?

Display logs

I am tagging all my logs with the SpanId and TraceId when I have these information: it is really convenient to be able to have an aggregated view of the logs of a given Trace.

It would be fab to be able to have access to them (or a link) somehow in Zipkin's UI.

Span tooltips?

tooltips

Should we add some sort of quick info for spans "parts" like in the image above?
E.g. displaying start and stop time in a tooltip together with the start and end annotation.
Or is the dialog that pops up when clicking enough?

Automatically calculate and display network latency for a span in the UI

From @mansu on October 18, 2016 20:57

Currently, when we look at a span belonging to a trace in the UI, one has to mentally calculate the network latency to identify what percentage of the latency came from processing and what percentage of latency came from request processing.

So, if a span has cs, cr, ss and sr, the network latency would be (sr - cs) + (ss - cr). Bonus points if the network latency can be shown like the chrome network latency tab. Adding an image from chrome documentation for reference.

image

Copied from original issue: openzipkin/zipkin#1345

Add Timeline times

The Timeline markers currently lack information about what time they represent.
This needs to be calculated in the home component and rendered in the home view.

io.zipkin.java:zipkin-autoconfigure-ui:1.11.1 : Uncaught RangeError: Maximum call stack size

traceToMustache.js:34 Uncaught RangeError: Maximum call stack size exceededcreateSpanTreeEntry @ traceToMustache.js:34(anonymous function) @ traceToMustache.js:37map @ (program):870createSpanTreeEntry @ traceToMustache.js:37(anonymous function) @ traceToMustache.js:37map @ (program):870createSpanTreeEntry @ traceToMustache.js:37(anonymous function) @ traceToMustache.js:37map @ (program):870createSpanTreeEntry @ traceToMustache.js:37

When the zipkin host isn't localhost..

from @dragontree101

my zipkin-server is 1.16 and change zipkin-ui in 0.0.1
i use new zipkin-ui, but has error, i need change some ui-config?

i use config is

environment=
  KAFKA_ZOOKEEPER="10.215.242.11,10.215.242.12,10.215.242.13:2181/kafka-offline",
  STORAGE_TYPE="elasticsearch",
  SELF_TRACING_ENABLED="true",
  ES_CLUSTER="prod",
  ES_HOSTS="http://10.215.242.15:9200",
  ES_PIPELINE="zipkin",
  KAFKA_STREAMS="4",
  QUERY_PORT="8080"

image

i think to change localhost to zipkin-server's ip? i am not deploy zipkin-server in my local.

broken master

current master is broke on circleci

https://circleci.com/gh/openzipkin/zipkin-ui/57

This may or may not be related to a concern raised on gitter by @charlescui

I git clone zipkin-ui from github, but the master branch is not a stable source code. I npm run build meet many error, such as package.json didn't contain moment package , webpack version is not locked and error with webpack.common.js options. Is there a stable version?

document how to patch a zipkin server

when building from scratch, you edit the zipkin-server/pom.xml like so.. there's probably value in showing how to do this just using a commandline and an existing zipkin jar. (which would be overriding the classpath I think)

    <!-- Static content for the web UI -->
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>zipkin-autoconfigure-ui</artifactId>
      <optional>true</optional>
      <exclusions>
        <exclusion>
          <groupId>${project.groupId}</groupId>
          <artifactId>zipkin-ui</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    <dependency>
      <groupId>io.zipkin.ui</groupId>
      <artifactId>zipkin-ui</artifactId>
      <version>0.0.1</version>
    </dependency>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.