naver / kaist-oss-course

Introduction to Open Source Software class @ KAIST 2016
38 stars 9 forks source link

[허블몬] 그래프 개선 - node 에 파이차트 그리는 기능 추가 #40

Open lynix94 opened 8 years ago

lynix94 commented 8 years ago

허블몬에서 플랫폼 구조를 보여주는 그래프는 cytoscape 를 사용하고 있다. (http://www.cytoscape.org/)

현재는 라벨이 붙은 노드와 엣지만을 지원하고 있다. 노드는 보통 인스턴스를 나타내고 엣지는 연결상태를 표현하고 있다.

cytoscape 는 노드의 모양을 그림이나 여러 형태로 (파이차트 형태도 이미 예가 있다) 변경 가능한데 이 기능을 사용하여 노드의 모양을 파이차트로 하여, 메모리나 네트웍의 리소스 사용율을 표현하면 유용하게 사용할 수 있다.

ryuina commented 8 years ago

제가 하겠습니다

lynix94 commented 8 years ago

테스트 그래프는 아래와 같이 볼 수 있습니다.

http://hubblemon.navercorp.com:8000/graph/?type=test_graph&graph_name=graph1 코드를 좀 보시면 노드와 링크에 색, 라벨을 먹이는 기능도 있습니다. test_mon.test_view.get_graph_data 로부터 렌더링 된 내역입니다.

pie 렌더링은 아래 링크의 파이차트 예제를 보시면 됩니다. http://js.cytoscape.org/

ryuina commented 8 years ago

@lynix94 안녕하세요. 해당 링크 http://hubblemon.navercorp.com:8000/graph/?type=test_graph&graph_name=graph1 를 열어보았는데 ERR_CONNECTION_REFUSED라고 에러가 뜹니다! 확인 부탁드립니다,

lynix94 commented 8 years ago

아 제가 부주의하게 링크를 달았네요. 허블몬 설치하시고 http://localhost/graph/?type=test_graph&graph_name=graph1 로 보셔야 한다는 의미입니다.

위 링크는 사내 서비스라 외부 접속이 안되고요. 그리고 이슈 해결을 하셔야 하니 로컬에 설치하시고 작업하시면서 저 링크를 참조하시라는 의미였습니다.

YoungboShim commented 8 years ago

팀원으로 같이 참가하도록 하겠습니다.

ryuina commented 8 years ago

안녕하세요. 저희는 지금 cytoscape의 관련 예제를 바탕으로 piechart를 각 노드에 어떻게 표시할 것인지 등을 알았고 실제 데이터를 노드에 표시하는 과정을 진행하려 합니다. 그런데 각 node가 표시해야 하는 정보가 어떤 정보여야 하는지 잘 감이 잡히지 않습니다.

  1. 실제 현장에서 (크게는 수백개의 node가 있는 graph를 다루는) hubblemon을 사용할때 어떤 정보를 얻고자 사용하는지,
  2. pie chart에 표시되었으면 하는 정보는 무엇인지 궁금합니다.
  3. 그리고 저희가 각 node로 표시되는 server 혹은 client의 정보를 가져와야 하는데, 어느부분을 참조하면 좋을지도 궁금합니다.
  4. 마지막으로 디자인적인 부분으로, 실제 허블몬 그래프에서 모든 노드에 파이차트가 (현란한 색으로?) 표시되면 사용하기에 구분이 잘 안되고 불편할것 같은데 1) 클릭시에만 차트가 보이는 기능 혹은 2) 원래는 그레이스케일로 차트가 표시되다가 클릭하면 색으로 변하는 기능이 필요할지 의견을 여쭙고 싶습니다.
lynix94 commented 8 years ago

안녕하세요

제가 메일을 놓쳤나봅니다.

그래프는 현재 토폴로지밑 구성상황을 보기위해사용하고 있습니다. 다만 다음 버전에선 장고 트랜잭션 모니터링 기능에 사용될예정입니다 (핀포인트 같은) 그리고 지역별, 그룹별로 구성이 분리되기 때문에 한화면에 수백개 까지 보이진 않으니 그건 걱정하지 않으셔도 됩니다

파이차트는 현재 메모리 사용률이 표기되는게 목적이나 네트웍 사용률도 고려하고 있습니다. 하지만 설정에 따라 또다른 논리적인 자원분배상황을 표기할수도 있고요

현재 토폴로지 구성은 아커스와 nbase arc만 지원하고 있습니다 그런데 이걸 구성하는게 더 힘든 일이라 위에 알려드린 테스트 더미 그래프 링크를 사용하시면 됩니다

위 링크에서 그래프 노드를 구성할때 임의로 노드별 파이 차트를 그리게 구성하시면 됩니다.

실제 아커스, 아크의 그래프에서 파이를 사용하는건 별도의 이슈이고 만드신 기능이 머지되면 그것을 사용해 구현하겠습니다. 환경구성이 복잡해서 본이슈나 별도 이슈로 만들지 않았습니다

그럼 더 궁금하신사항은 문의 주시기 바랍니다