skywalking icon indicating copy to clipboard operation
skywalking copied to clipboard

Support MySQL monitoring.

Open yswdqz opened this issue 3 years ago • 46 comments

<Feature description>

  • [ ] If this is non-trivial feature, paste the links/URLs to the design doc.

  • [ ] Update the documentation to include this new feature.

  • [ ] Tests(including UT, IT, E2E) are added to verify the new feature.

  • [x] If it's UI related, attach the screenshots below.

  • [x] If this pull request closes/resolves/fixes an existing issue, replace the issue number. Closes #9376

  • [x] Update the CHANGES log.

Screenshots

--- latest

P(PDC7A0%UYLE8$4O%P82{9

$C0GTM6{(~B}6`GC%_BRU7S

--- old SJGU3}~1SUMANZG90%C@V VHOPP9PFNZK~{GW4B}13PVS N6MA70_JGURY1F P PNJ1TY

https://user-images.githubusercontent.com/74546965/183292715-d591b66d-c4a9-411b-bd07-6f0071b3ade7.mp4

yswdqz avatar Aug 06 '22 06:08 yswdqz

It causes a conflict. I don't know why.

yswdqz avatar Aug 06 '22 06:08 yswdqz

It mean layer file was changed by others. This is a common case in git. Search for git conflict on google, it will guide you to resolve it.

wu-sheng avatar Aug 06 '22 07:08 wu-sheng

OK, I have resolved it.

yswdqz avatar Aug 06 '22 07:08 yswdqz

Some checks were not successful. And I don't know why too.

yswdqz avatar Aug 06 '22 11:08 yswdqz

If this pull request closes/resolves/fixes an existing issue, replace the issue number. Closes #.

Don't forget to put issue No. after the #.

Update the CHANGES log.

You forgot to update the change log.

wu-sheng avatar Aug 06 '22 11:08 wu-sheng

@Fine0830 Please help with moving the virtual database as a sub-menu of general service(So, general service could have two children, services, and a virtual database). And change the virtual database to Database, then add MySQL as a sub and a root layer(layer==MYSQL)

wu-sheng avatar Aug 06 '22 11:08 wu-sheng

You could follow the GHA control file to run e2e locally. The e2e is using e2e tool to define the env and verify result. You would be asked to add an e2e for this case too.

https://github.com/apache/skywalking/blob/4bd4231b6067ddfe70079754c84d9b121982b2bf/.github/workflows/skywalking.yaml#L300-L301

If you can see this details button, you could check the e2e logs here. But it is better you would run on your own. image

wu-sheng avatar Aug 06 '22 11:08 wu-sheng

If this pull request closes/resolves/fixes an existing issue, replace the issue number. Closes #.

Don't forget to put issue No. after the #.

Update the CHANGES log.

You forgot to update the change log.

I thought there would be other PR, so I didn't set them. I will change it later.

yswdqz avatar Aug 06 '22 12:08 yswdqz

Another PR is about?

wu-sheng avatar Aug 06 '22 12:08 wu-sheng

Another PR is about?

About the showcase. I think I should close the issue after complete the showcase at that time.

yswdqz avatar Aug 06 '22 12:08 yswdqz

Another PR is about?

About the showcase. I think I should close the issue after complete the showcase at that time.

I see. Showcase is a thing nice to have, it doesn't need to be tracked from here. Because we never could make all features available on showcase.

If you want to keep it open, it is fine. But you should link this PR to the issue in the description(not behind the close keyword). Because in the commit logs, you could have the PR before the issue.

wu-sheng avatar Aug 06 '22 13:08 wu-sheng

Another PR is about?

About the showcase. I think I should close the issue after complete the showcase at that time.

I see. Showcase is a thing nice to have, it doesn't need to be tracked from here. Because we never could make all features available on showcase.

If you want to keep it open, it is fine. But you should link this PR to the issue in the description(not behind the close keyword). Because in the commit logs, you could have the PR before the issue.

I understand. I will fix them all tomorow.

yswdqz avatar Aug 06 '22 13:08 yswdqz

About the dashboard JSON file, If I add the Apache license , It will failed in import(It will suceess without the license). Is that normal?

yswdqz avatar Aug 07 '22 05:08 yswdqz

What do you mean? They all have license header. https://github.com/apache/skywalking/blob/master/oap-server/server-starter/src/main/resources/ui-initialized-templates/browser/browser-app.json

wu-sheng avatar Aug 07 '22 05:08 wu-sheng

What do you mean? They all have license header. https://github.com/apache/skywalking/blob/master/oap-server/server-starter/src/main/resources/ui-initialized-templates/browser/browser-app.json

Yes.,others have the same problem. When I use the UI, I delete a dashboard and import the JSON to UI, if the JSON file has a license, the website will not respond anything.If not , it will show a message that save successfully.

yswdqz avatar Aug 07 '22 06:08 yswdqz

That file is not for importing, it is automatically initialized by OAP in booting.

wu-sheng avatar Aug 07 '22 06:08 wu-sheng

UI has updated. Please sync with master, and notice UI submodule update, choose commit ID correctly.

wu-sheng avatar Aug 07 '22 11:08 wu-sheng

OK

yswdqz avatar Aug 07 '22 12:08 yswdqz

Hi, @yswdqz I labeled this PR as high priority, which means, this would block the 9.2.0 release. The only reason I did this is, we have changed the menu at the UI side. We should make sure this is ready before publishing the release.

Don't worry, you should have enough time. More than 2 weeks to release.

wu-sheng avatar Aug 07 '22 12:08 wu-sheng

Hi, @yswdqz I labeled this PR as high priority, which means, this would block the 9.2.0 release. The only reason I did this is, we have changed the menu at the UI side. We should make sure this is ready before publishing the release.

Don't worry, you should have enough time. More than 2 weeks to release.

I understand. I will do my best to complete it !

yswdqz avatar Aug 07 '22 12:08 yswdqz

I have a problem that I can't see my dashboard without import. I have put the dashboard file to ui-initialized-templates, need I do some other things to help the oap automatically initialized ?

yswdqz avatar Aug 07 '22 12:08 yswdqz

You need to clear your storage, then you should update UITemplateInitializer to add the new layer to activate the folder to initialize.

wu-sheng avatar Aug 07 '22 12:08 wu-sheng

OK, I get it.

yswdqz avatar Aug 07 '22 12:08 yswdqz

A tip, don't push many small commits continuously in a short time. Because you may trigger many CI processes in a short time. Also, in an open-source experience, many projects would ask you to rebase all commits to only keep one. SkyWalking is fine, we could squash all commits in the final merge. (One commit in the master branch for one PR only).

wu-sheng avatar Aug 07 '22 14:08 wu-sheng

A tip, don't push many small commits continuously in a short time. Because you may trigger many CI processes in a short time. Also, in an open-source experience, many projects would ask you to rebase all commits to only keep one. SkyWalking is fine, we could squash all commits in the final merge. (One commit in the master branch for one PR only).

Thank you , It is my fault. I'm not very familiar with Git operations.I will do better in the future.

yswdqz avatar Aug 07 '22 14:08 yswdqz

Is this OK?

V2_HUXRC7PWKCL~)9YPFX{6

yswdqz avatar Aug 07 '22 15:08 yswdqz

The layout is good, please make sure the units are added.

wu-sheng avatar Aug 07 '22 15:08 wu-sheng

I think the mysql_uptime's unit should be day, the innodb_pool_size's unit should be MB. Others should be unitless(TPS QPS Trend , and I think the unit of thread/connects should not set), so I have not set for them.

yswdqz avatar Aug 07 '22 15:08 yswdqz

I think the mysql_uptime's unit should be day, the innodb_pool_size's unit should be MB. Others should be unitless(TPS QPS Trend , and I think the unit of thread/connects should not set), so I have not set for them.

I am just not sure about the mysql_uptime's unit should be day. Is this a setup from somewhere?

wu-sheng avatar Aug 07 '22 15:08 wu-sheng

I think the mysql_uptime's unit should be day, the innodb_pool_size's unit should be MB. Others should be unitless(TPS QPS Trend , and I think the unit of thread/connects should not set), so I have not set for them.

I am just not sure about the mysql_uptime's unit should be day. Is this a setup from somewhere?

A dashboard of Grafana set the unit to week, such as 1.9 week . I think day maybe more precise. PV@)1YT6~8WWUMT2S5ACGS .

yswdqz avatar Aug 07 '22 15:08 yswdqz