Pinpoint: Do i need to purchase a license from gojs if i need to run the pinpoint in production?

Created on 3 Dec 2015  路  43Comments  路  Source: pinpoint-apm/pinpoint

web

Most helpful comment

We removed go.js from the 2.0.0-RC2 release.
https://github.com/naver/pinpoint/tree/v2.0.0-RC2

6224 Implement servermap with cytoscape.js

All 43 comments

WOW This is serious:
If you wish to use the GoJS library for your private evaluation, you may do so only under the terms of the Evaluation License Agreement. http://gojs.net/latest/doc/license.html

I have also concern about this - http://gojs.net/latest/intro/deployment.html

I went through the links huge price for gettting license :(

http://www.nwoods.com/sales/index.html

But I'm afraid that I will not be able to use it. Hope we can easily move to other open source framework.

In order to deploy and use Pinpoint in production, I believe you'll have to get a license for your domain (correct me if I'm wrong).

For our case (Naver), we purchased a license to use Pinpoint in our company.

However, if any of you know of a fully open source javascript library that could be used to draw the server map, please do let us know.

D3 looks promising...let me know when we can start contributing for this.

The same issue we will have with charts that are generated with amCharts (require license http://www.amcharts.com/online-store/).

I think replacing amCharts with D3 is relatively easy compared to go.js, so
@Janardhan-Babu if you want to start contributing, would you replace chart using amchart with d3?
@denzels could you help @Janardhan-Babu do that?

@nstopkimsk we need to buy amchart its price is similar to go.js. Also if we can get some doc on the working of the current Web implementation it will be really helpful to do that.
@denzels i am also looking for free charts but let me know if you come up with any chart js.

@Janardhan-Babu The charts used in the pinpoint are uncomplicated.
If you want to contribute, Why don't you develop charts like "Response Summay" or "Load" with d3.

@Janardhan-Babu @denzels #1410

@dawidmalina @nstopkimsk @denzelsN I read the NOTICE which said if we keep the link on amcharts then AmCharts is under a "linkware license". Must I paid for a "linkware license"?

Also we are trying to replace gojs too, could any body give me some hint how to show the "Response Summary" when selecting a node on GoJS canvas? What code should be called at this time?

Is there any news on this?
The current situation makes many usecases of pinpoint impossible due to licensing costs which are also not stated anywhere on the overview page!

Are there any ideas as to which libraries could be used to remove the dependencies to commercial libraries?

@gebi
Our team have replaced gojs by vis, and amchart by Chart though only topology map and cpu/mem statistic could be shown. While these are enough for our using. Amazing part is that it only takes us 4 weeks for one person's work with coding and testing. I am asking permission to open source it while this takes time. If you really needed I recommand DIY.

@jiaqifeng that would be awesome! We'd also need this and would help in upgrading and fixing things needed for bigger deployments.
It would be really awesome if you could convince your people to open source it (preferable under the same license as pinpoint currently is, apache 2)!

btw... mxgraph got open sourced some time ago and is used by it's creators in their newer production services (like draw.io), it might make a good battlehardened alternative for gojs.

https://github.com/jgraph/mxgraph

@jiaqifeng any news on your plan to open source your pinpoint changes :)?

@gebi Since our manager's focus has changed, it seems our open source plan is frozen now. So I suggest any one need this should try to do it himself. I am not familiar with mxgraph, maybe I will investigate it later if I have time.

@jiaqifeng Perhaps you can convince your manager to open source your work, not through altruism but simply so that when you upgrade pinpoint to the next release you don't have to spend another 4 weeks to redo your implementation work.

@jiaqifeng Why did you replace GoJS?

@edhenderson GoJS have a commercial license. My company would not buy the license so I have to replace it.

@jiaqifeng Any luck with being able to release your work under APL2? You don't need to spend more time on it, just get permission to release it and avoid having to do it all again when you upgrade pinpoint in the future.

This issue/proposal has been automatically marked as stale because it hasn't had any recent activity. It will automatically be closed if no further activity occurs for 20days. If you think this should still be open, or the problem still persists, just pop a reply in the comments and one of the maintainers will (try!) to follow up. Thank you for your interest and contribution to the Pinpoint Community.

please don't mark it as stale as this issue is IMHO still relevant and important for all people wanting to deploy pinpoint!

Wow, still nobody could contribute some code?

@gebi
This issue will not be markded as stale in the future.

Hello, I am a developer of GoJS. Naver/Pinpoint has permission to distribute the GoJS library, as long as it shows the watermark in the open source project (it does).

Anyone using this or any other open-source project can use the evaluation version GoJS within the project indefinitely. The evaluation will not expire.

To remove the watermark you will have to buy a license, and (cheaper) internal-use licenses can be obtained, sometimes with a startup discount if your company is small. If you explain your situation to sales they will be happy to assist.

@simonsarris, so..., you mean as long as the watermark is on the chart/diagram, we can use it for free, right?
And if yes, does it apply for other charts/diagram?

if I don't want to purchase the license and use it with the watermark then can I use it or not?

Open source projects and people using it for educational purposes are allowed to use GoJS with the watermark under the terms of the evaluation license. Companies or people building a website/product who intend to use GoJS (or an open source project using GoJS) must purchase a license.

@binDongKim

Just to let you know.

Open source projects and people using it for educational purposes are allowed to use GoJS with the watermark under the terms of the evaluation license. Companies or people building a website/product who intend to use GoJS (or an open source project using GoJS) must purchase a license.

Open source is allowed to use GoJS? When and where? I wanted to use it for research and they asked me to pay around 495 dollars for an academic license. The price has gone up since then.
Not to mention that their licenses are for SINGLE applications and SINGLE domains...

Hello, @mrn-aglic

Shocking news... Can you share more details of the situation?
@simonsarris says he's the developer of GoJS and insisting it's free for educational purpose.
(isn't research part of education?)

Our team(especially @binDongKim ) is keeping an eye on this.

I think it is irrelevant what @simonsarris says because there is no way to verify that he speaks for the company in a position of authority. The license is here:

https://gojs.net/latest/license.html

There is no mention of open source, education or academic licensing on that page. If they were to release gojs under an open source license then that solves the problem. But there is no way to do that but still restrict use to education, not least is that pinpoint developers have no way to restrict distribution of pinpoint to education only.

@ari You can verify that I speak for Northwoods by looking at the GoJS repo: I am one the contributers, making most of the commits, closing issues, etc.

https://github.com/NorthwoodsSoftware/GoJS/graphs/contributors
https://github.com/NorthwoodsSoftware/GoJS/issues/84

@RoySRose

(isn't research part of education?)

Many research teams are not part of academia.

As @simonsarris says, not all academics are part of education. The Northwoods team probably realizes this difference. Some research is done through financed research projects (grants), while other is a requirement for people employed at universities. Of course, the later can also be additionally financed from some research grants and sources...
Still, the price is identical to some other libraries I have been looking at, which also do not provide academic licenses.
I've also found some free alternatives, but the question is always how hard it is to learn a new library and migrate some application. Draw2D seems to be the most complete alternative. However, I still did not have a chance to try it out.
Anyway, I can understand the pricing, given the time it takes to develop such a library, the price of other comparable libraries, the time it takes to provide samples and support (I've found answers from the team on their forum and StackOverflow).

Yeah. I know its a bummer when there's a commercial library and its tricky when its included as part of something open source. But our official position at Northwoods is "We like eating, and try to do it every day."

What we are selling when we sell GoJS is essentially thousands of developer hours of thinking hard about the related problems. Unlike hiring devs and doing the work yourself, your project can save not just money, but time. (You also get support of course). Our goal is to try to make that "worth it" for your project.

We understand that this doesn't work for some teams, and you can always contact sales (gosales [at] nwoods.com or here) and explain your situation, and we might be able to work something out.

BTW, I think Draw2D has been essentially dead since 2016, but maybe this doesn't matter if it does all of the things you need it to do.

A reasonable position, I also like to eat, which is why I've spent countless hours looking for alternatives ;-)
As I stated earlier, I understand the reasons for the price.

As this thread is dragging since 2015 and there is still no good answer, other than "rewrite the UI yourself" and a few people mentioning it in this thead that they have done so we have also switched to alternatives.

In the beginning pinpoint provided awesome benefits with tracing for internal Apps, but it was not usable in production setups (licensing), which made the point kinda mood.

The other big bummer is https://github.com/naver/pinpoint/issues/5063 , opentracing support is must nowadays.

So instead of rewriting a UI where the backend still provides no opentracing support we have switched to opentracing/jaeger and will port all custom instrumentation over to that plattform.

@simonsarris It is no reflection on your work on GoJS, but a statement from you in a comment thread isn't enough to base licensing decisions on. We simply don't know if you speak for the company even if you wrote 100% of the code. And even if you do, a comment on a thread which might be deleted in the future doesn't hold a lot of legal weight.

Does your offer of a free license for pinpoint still hold if we modify pinpoint ourselves? What if we add a new feature? What if the new feature is a task tracking system? Without a clear line of what is allowed, it is very hard to plan.

For myself, the only statement which would suffice would be clear open source licensing on your website. Perhaps that doesn't work with your business model, and that's your decision, but it does rule out use of your library in open source projects.

@gebi Thanks for the pointer to jaeger. I'll check it out.

@ari @simonsarris @gebi @mrn-aglic

Thank you all for all of your opinions and suggestions.
This may not mean much... but to explain the situation.

TLDR; We have plans. No hard dates. Hope by the end of this year, If everything works out perfectly.

This issue is ringing our ears for a long time and getting louder every year. So, we have planned to open a new version of Pinpoint-Web without the GoJS from the beginning of this year, @binDongKim is looking for a library that can take care of the features that are provided by GoJS. Not only the features but the performance is critical since the servermap includes so many data (We are ALREADY on the last stage of developing one with vis.js but rethinking due to the performance issued). And to be honest, we couldn't find the perfect one yet. (still, @binDongKim is optimistic on one of the open-source and will start prototype it, soon)
@ari @mrn-aglic if you know any alternative libraries that @binDongKim can checkout. Please let us know. (I know that @binDongKim has already checked out dozens of them. But no harm done to know more)

@gebi sad that you had to switch to jaeger due to this issue. (fully understandable). Just want to explain the opentracing part. We knew about the opentracing, open-source APM devs try to keep contact with each other due to several reasons. Anyway, we couldn't(didn't) support opentracing not only we didn't have many resources but the specs were so different from Pinpoint, and due to the difference with open tracing we thought it couldn't provide few elements that we valued in monitoring, as provided in Pinpoint.

We always try to keep close eye on the technical changes in the environment. Supporting opentracing (yes, it's a good project with good intentions) was just not on the top of our priority list.

And about this

The other big bummer is #5063 , opentracing support is must nowadays.

Just to let people who read this thread know.
Open tracing project has been stopped and merged to open-telemetry. You can check the details in the link below.

https://medium.com/opentracing/merging-opentracing-and-opencensus-f0fe9c7ca6f0

Alternatives: Draw2D, JointJS, and JSPlumb community edition... Draw2D seems to be the most complete alternative, but may be out of date (unsure).
JointJS core is free but is missing some of the features that are available in GoJS. Rappid is built on it (but Rappid is not free). However, out of the three, I like it the most. I even found an example of how to implement a palette: https://codepen.io/fxaeberard/pen/reGvjm
JSplumb community edition also seems to be nice.

Draw2D: http://www.draw2d.org/draw2d/
JointJS: https://resources.jointjs.com/docs/jointjs/v3.0/joint.html
JSPlumb: https://github.com/jsplumb/jsplumb

We removed go.js from the 2.0.0-RC2 release.
https://github.com/naver/pinpoint/tree/v2.0.0-RC2

6224 Implement servermap with cytoscape.js

Was this page helpful?
0 / 5 - 0 ratings