{"id":158,"date":"2009-11-08T09:11:18","date_gmt":"2009-11-08T07:11:18","guid":{"rendered":"http:\/\/code.openark.org\/forge\/?page_id=158"},"modified":"2010-07-05T10:18:31","modified_gmt":"2010-07-05T08:18:31","slug":"generating-google-charts","status":"publish","type":"page","link":"https:\/\/code.openark.org\/forge\/mycheckpoint\/documentation\/generating-google-charts","title":{"rendered":"Generating Google charts"},"content":{"rendered":"<p><strong>Note:<\/strong> As of revision <strong>160<\/strong>, mycheckpoint provides with its own chart rendering, integrated into the various HTML reports. Although still using the Google charts format for chart generation, there is actually no calling upon Google services; all chart rendering is done locally, and <em>no data is sent over the network<\/em>. For more on this, see <a title=\"Generating human reports\" href=\"generating-html-reports\">Generating html reports<\/a>.<\/p>\n<p>Various views offer Google charts URL generation:<\/p>\n<ul>\n<li><strong>sv_report_chart_sample<\/strong><\/li>\n<li><strong>sv_report_chart_hour<\/strong><\/li>\n<li><strong>sv_report_chart_day<\/strong><\/li>\n<li><strong>sv_report_chart_24_7<\/strong><\/li>\n<li>And the various custom charts views.<\/li>\n<\/ul>\n<p>Not all variables and metrics are presented with charts. The above views only consider those most popular, which are worth being visually presented.<\/p>\n<p>Each of the first 3 views only utilizes last 256 values for each metric. For example, the <strong>DML<\/strong> column in all three views lists up to last 256 values per view. This would mean:<\/p>\n<ul>\n<li> Last 256 samples on <strong>sv_report_chart_sample<\/strong> (about 21 hours when samples are taken every 5 minutes)<\/li>\n<li>Last 256 hours on <strong>sv_report_chart_hour <\/strong>(about 10 and a half hours of aggregated data)<\/li>\n<li>Last 256 days on <strong>sv_report_chart_day<\/strong><\/li>\n<\/ul>\n<p>To generate a Google chart URL, simply query:<\/p>\n<blockquote>\n<pre>mysql&gt; SELECT DML FROM sv_report_chart_hour \\G\r\n*************************** 1. row ***************************\r\nDML: http:\/\/chart.apis.google.com\/chart?cht=lc&amp;chs=400x200&amp;chts=303030,12&amp;chtt=Latest+10+days:+Jan+31,+09:00++-++Feb+10,+08:00&amp;chf=c,s,ffffff&amp;chdl=com_select_psec|com_insert_psec|com_delete_psec|com_update_psec|com_replace_psec&amp;chdlp=b&amp;chco=ff8c00,4682b4,9acd32,dc143c,9932cc&amp;chd=s:kjloqrsvy2xz326jegggeegilnposrwwwy21133iffefggiknmrrrruz1x53567khgihjigemnoqusww0x13456ggehgggjhlmpptuvy2z33646khfhghfihjknnoqqttz0yz05mefhfgfgfhhmklmppnnprxrueecfdfehgjlnqsttvz022648fggigihjjnnqsuux11314579mhggghgihlnqrvwywy234699ihfjghhjj,WUXXXWXUXaVUVWYYWUUVXWWYZYYXZabaXXZXWWXYVUVVVUWYYWXXZZaYXYabZWXZXWTTUUVVabbecaZXZYYYXVXbUSTTTTWVXXaZaYXaYZccbYYeYVWVUSUTWUaZYXWVUZXVVUUbUVSSVUTUVUUTUTWZVSVVWWYaUTSSVTWWYYWWXYZXXXZYXYaiVUUUWXWWYZZYaacaYXXYZYXibVWUTTVVaaZWYXXYXXaabaYmZWXWVVWZ,HHHHHHHHHHHHIIIJILKIIIOQNNKMLJJJJJJKJKJLJIHHHHIHHHIHIHIIIHIIIIILHGGGGGGGHHIIIHIHIHIIIIIMGGGGGGGHHHIIIIIIIIIIIIIPHGGGGGHGHHHHHHHHHIHHHHHPGGGFFFGFGGGGGGGGGGGGHGHLFFFFFFGGGGHHHHHHHHIHIIITGGGGGGGGHHIIIIIIIIIIIIIVHGGGGGHHHIIIIIIIIIIJJJIVHGHGGGHH,IHHIIHIHIIHHHHIJHIIIIIIIIIIIIHIHIIIIHIIJHHHIHIIIIHIIIIIIIHIHIIIJHHHHIIHHIIIIIIIHIHIIIIIJIIIIIIIHIHIIIIIIIIIIIIIJIHHHHHHHHHHHHHHHHHHHIHHJHHIIIIHHIIIHHHHHHHHHHHHJHHHHHHHHIHHHHHHHHIIIHHIJIIIIIIIIIIIIIIIIIIIIIIIJIIHIIIIIIIIIIIIIIIIIIIIJIIIIIIII,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&amp;chxt=x,y&amp;chxr=1,0,146.95&amp;chxl=0:|1st|2nd|3rd|4th|5th|6th|7th|8th|9th|10th|&amp;chxs=0,505050,10,0,lt&amp;chg=10.04,25,1,2,6.28,0&amp;chxp=0,6.28,16.32,26.36,36.40,46.44,56.48,66.52,76.56,86.60,96.64\r\n<\/pre>\n<\/blockquote>\n<p>The above results in <a href=\"http:\/\/chart.apis.google.com\/chart?cht=lc&amp;chs=400x200&amp;chts=303030,12&amp;chtt=Latest+10+days:+Jan+31,+09:00++-++Feb+10,+08:00&amp;chf=c,s,ffffff&amp;chdl=com_select_psec|com_insert_psec|com_delete_psec|com_update_psec|com_replace_psec&amp;chdlp=b&amp;chco=ff8c00,4682b4,9acd32,dc143c,9932cc&amp;chd=s:kjloqrsvy2xz326jegggeegilnposrwwwy21133iffefggiknmrrrruz1x53567khgihjigemnoqusww0x13456ggehgggjhlmpptuvy2z33646khfhghfihjknnoqqttz0yz05mefhfgfgfhhmklmppnnprxrueecfdfehgjlnqsttvz022648fggigihjjnnqsuux11314579mhggghgihlnqrvwywy234699ihfjghhjj,WUXXXWXUXaVUVWYYWUUVXWWYZYYXZabaXXZXWWXYVUVVVUWYYWXXZZaYXYabZWXZXWTTUUVVabbecaZXZYYYXVXbUSTTTTWVXXaZaYXaYZccbYYeYVWVUSUTWUaZYXWVUZXVVUUbUVSSVUTUVUUTUTWZVSVVWWYaUTSSVTWWYYWWXYZXXXZYXYaiVUUUWXWWYZZYaacaYXXYZYXibVWUTTVVaaZWYXXYXXaabaYmZWXWVVWZ,HHHHHHHHHHHHIIIJILKIIIOQNNKMLJJJJJJKJKJLJIHHHHIHHHIHIHIIIHIIIIILHGGGGGGGHHIIIHIHIHIIIIIMGGGGGGGHHHIIIIIIIIIIIIIPHGGGGGHGHHHHHHHHHIHHHHHPGGGFFFGFGGGGGGGGGGGGHGHLFFFFFFGGGGHHHHHHHHIHIIITGGGGGGGGHHIIIIIIIIIIIIIVHGGGGGHHHIIIIIIIIIIJJJIVHGHGGGHH,IHHIIHIHIIHHHHIJHIIIIIIIIIIIIHIHIIIIHIIJHHHIHIIIIHIIIIIIIHIHIIIJHHHHIIHHIIIIIIIHIHIIIIIJIIIIIIIHIHIIIIIIIIIIIIIJIHHHHHHHHHHHHHHHHHHHIHHJHHIIIIHHIIIHHHHHHHHHHHHJHHHHHHHHIHHHHHHHHIIIHHIJIIIIIIIIIIIIIIIIIIIIIIIJIIHIIIIIIIIIIIIIIIIIIIIJIIIIIIII,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&amp;chxt=x,y&amp;chxr=1,0,146.95&amp;chxl=0:|1st|2nd|3rd|4th|5th|6th|7th|8th|9th|10th|&amp;chxs=0,505050,10,0,lt&amp;chg=10.04,25,1,2,6.28,0&amp;chxp=0,6.28,16.32,26.36,36.40,46.44,56.48,66.52,76.56,86.60,96.64\">the following chart<\/a>:<\/p>\n<blockquote><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-294\" title=\"mycheckpoint-r54-chart-sample-2\" src=\"http:\/\/code.openark.org\/forge\/wp-content\/uploads\/2010\/02\/mycheckpoint-dml-chart-hourly-88-b.png\" alt=\"mycheckpoint-dml-chart-hourly-88-b\" width=\"400\" height=\"200\" \/><\/p><\/blockquote>\n<p>In the above chart, the peaks are full days. Looking in more detail at recent hours:<\/p>\n<blockquote>\n<pre>mysql&gt; SELECT DML FROM sv_report_chart_sample \\G\r\n*************************** 1. row ***************************\r\nDML: http:\/\/chart.apis.google.com\/chart?cht=lc&amp;chs=400x200&amp;chts=303030,12&amp;chtt=Latest+24+hours:+Feb+9,+08:50++-++Feb+10,+08:50&amp;chf=c,s,ffffff&amp;chdl=com_select_psec|com_insert_psec|com_delete_psec|com_update_psec|com_replace_psec&amp;chdlp=b&amp;chco=ff8c00,4682b4,9acd32,dc143c,9932cc&amp;chd=s:ZcUagbahWZgdchYdeggehbfkdjlefmggjbgskgohesndnherierhhkmcwif4lfvbp7emxbn7ep9antnq6bp2mr4aqyqjUSdTYbSXeVXbTVaVVbZVXeWYVWZXWYUYUfWZXWYaXXbYYcXaZVWgU,RSRSVUTTSUUSTRQTTRSSNPTNOSOSVPSTPPUPQSPQSQRRQOVQSQRRRSPPRPRRQRURUUTSTRUTRTUSVSUTTPVQVTRPUPRUVOkjkXSRSPQSPOSNOPVRPPQOQSQQROOROOQQOQOPQOPRPPQPRSTUb,EGFEGGFGFFGGFGGEGGFGGEGGFGGFGGFFGFFGGGGGFGGGGFFGFFGGFHGFGGFGGFGFGGHGGGHGGHGGGGHHGGGGGHGGFGHHMFWWYJEFEFFEEFEEFEFFEFFEFFEEFEEGDFFEEFEEFEFFEFFFFFEGF,GGGGGGGFGGGFGGGGGFGGFFHEFHFGHFFHFFHFGHFFGFFGGFGGFGGGFGGGGFFGFGHFFGGFGFFGFGGFGFGGGFGFGHGFHFGGFILFFHFGHFFHFFGFFGGGFFGFGGFFGGGHFFGGGGFGGFGHFGGFGGFGF,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&amp;chxt=x,y&amp;chxr=1,0,205.035000&amp;chxl=0:||+||12:00||+||16:00||+||20:00||+||00:00||+||04:00||+||08:00|&amp;chxs=0,505050,10,0,lt&amp;chg=4.17,25,1,2,0.69,0&amp;chxp=0,0.69,4.86,9.03,13.20,17.37,21.54,25.71,29.88,34.05,38.22,42.39,46.56,50.73,54.90,59.07,63.24,67.41,71.58,75.75,79.92,84.09,88.26,92.43,96.6<\/pre>\n<\/blockquote>\n<p>The above translates to <a href=\"http:\/\/chart.apis.google.com\/chart?cht=lc&amp;chs=400x200&amp;chts=303030,12&amp;chtt=Latest+24+hours:+Feb+9,+08:50++-++Feb+10,+08:50&amp;chf=c,s,ffffff&amp;chdl=com_select_psec|com_insert_psec|com_delete_psec|com_update_psec|com_replace_psec&amp;chdlp=b&amp;chco=ff8c00,4682b4,9acd32,dc143c,9932cc&amp;chd=s:ZcUagbahWZgdchYdeggehbfkdjlefmggjbgskgohesndnherierhhkmcwif4lfvbp7emxbn7ep9antnq6bp2mr4aqyqjUSdTYbSXeVXbTVaVVbZVXeWYVWZXWYUYUfWZXWYaXXbYYcXaZVWgU,RSRSVUTTSUUSTRQTTRSSNPTNOSOSVPSTPPUPQSPQSQRRQOVQSQRRRSPPRPRRQRURUUTSTRUTRTUSVSUTTPVQVTRPUPRUVOkjkXSRSPQSPOSNOPVRPPQOQSQQROOROOQQOQOPQOPRPPQPRSTUb,EGFEGGFGFFGGFGGEGGFGGEGGFGGFGGFFGFFGGGGGFGGGGFFGFFGGFHGFGGFGGFGFGGHGGGHGGHGGGGHHGGGGGHGGFGHHMFWWYJEFEFFEEFEEFEFFEFFEFFEEFEEGDFFEEFEEFEFFEFFFFFEGF,GGGGGGGFGGGFGGGGGFGGFFHEFHFGHFFHFFHFGHFFGFFGGFGGFGGGFGGGGFFGFGHFFGGFGFFGFGGFGFGGGFGFGHGFHFGGFILFFHFGHFFHFFGFFGGGFFGFGGFFGGGHFFGGGGFGGFGHFGGFGGFGF,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&amp;chxt=x,y&amp;chxr=1,0,205.035000&amp;chxl=0:||+||12:00||+||16:00||+||20:00||+||00:00||+||04:00||+||08:00|&amp;chxs=0,505050,10,0,lt&amp;chg=4.17,25,1,2,0.69,0&amp;chxp=0,0.69,4.86,9.03,13.20,17.37,21.54,25.71,29.88,34.05,38.22,42.39,46.56,50.73,54.90,59.07,63.24,67.41,71.58,75.75,79.92,84.09,88.26,92.43,96.6\">the following image<\/a>:<\/p>\n<blockquote><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-296\" title=\"mycheckpoint-r54-chart-sample-3\" src=\"http:\/\/code.openark.org\/forge\/wp-content\/uploads\/2010\/02\/mycheckpoint-dml-chart-sample-88-b.png\" alt=\"mycheckpoint-dml-chart-sample-88-b\" width=\"400\" height=\"200\" \/><\/p><\/blockquote>\n<h4>Available charts<\/h4>\n<p>In order to detect the available charts, issue:<\/p>\n<blockquote>\n<pre>mysql&gt; DESC sv_report_chart_sample;\r\n+------------------------------------------+----------+------+-----+---------+-------+\r\n| Field\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | Type\u00a0\u00a0\u00a0\u00a0 | Null | Key | Default | Extra |\r\n+------------------------------------------+----------+------+-----+---------+-------+\r\n| uptime_percent\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| innodb_read_hit_percent\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| innodb_io\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| innodb_buffer_pool_used_percent\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| innodb_estimated_log_mb_written_per_hour | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| innodb_row_lock_waits_psec\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| bytes_io\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| myisam_key_buffer_used_percent\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| myisam_key_hit\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| DML\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| questions\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| innodb_rows\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| tmp_tables\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| read_patterns\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| table_locks_waited_psec\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| table_cache_use\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| opened_tables_psec\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| connections_psec\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| connections_usage\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| thread_cache_use\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| threads_created_psec\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| relay_log_used_mb\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| seconds_behind_master\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| seconds_behind_master_psec\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| estimated_slave_catchup_seconds\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| os_cpu_utilization_percent\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| os_loadavg\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| os_memory\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n| os_mountpoints_usage_percent\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | longblob | YES\u00a0 |\u00a0\u00a0\u00a0\u00a0 | NULL\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\r\n+------------------------------------------+----------+------+-----+---------+-------+<\/pre>\n<\/blockquote>\n<p>The list may change in time.<\/p>\n<h4>Modifying chart size<\/h4>\n<p>Chart size is by default 370&#215;180 pixels. There are two ways to change these settings:<\/p>\n<ol>\n<li> When running <strong>mycheckpoint deploy<\/strong>, it is possible to specify other dimensions. See <a href=\"Usage\">Usage<\/a> page.<\/li>\n<li>Manually updating table data (though this will be overwritten on next deploy):<\/li>\n<\/ol>\n<blockquote>\n<pre>UPDATE charts_api SET chart_width=500, chart_height=360<\/pre>\n<\/blockquote>\n<h4>Aggregating chart data<\/h4>\n<p>There are various views which aggregate charts into HTML report files. See <a title=\"Generating human reports\" href=\"generating-html-reports\">Generating html reports<\/a>. While these use the Google charts URL format, they do not actually call upon Google. Instead, local Javascript invocation is used to render the charts.<\/p>\n<h4>Google charts<\/h4>\n<p>Do take note that if you do call upon a Google Charts URL, you are sending data to Google. If this concerns you, or you are unable to download images from Google due to firewall settings, you may try other charting solutions, which support the Google Charts API.<\/p>\n<p><em>mycheckpoint<\/em>&#8216;s HTML views use local Javascript rendering of the charts. You may also check out JFree&#8217;s <a href=\"http:\/\/www.jfree.org\/eastwood\/\">Eastwood<\/a>, for example.<\/p>\n<p>To update the charts API, issue an <strong>UPDATE<\/strong> query. For example:<\/p>\n<blockquote>\n<pre>UPDATE charts_api SET service_url = 'http:\/\/localhost\/eastwood\/chart'<\/pre>\n<\/blockquote>\n<p>The service url does not come into play on <em>mycheckpoint<\/em>&#8216;s HTML views. It is disregarded.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Note: As of revision 160, mycheckpoint provides with its own chart rendering, integrated into the various HTML reports. Although still using the Google charts format for chart generation, there is actually no calling upon Google services; all chart rendering is done locally, and no data is sent over the network. For more on this, see [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":147,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","meta":{"footnotes":""},"class_list":["post-158","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/code.openark.org\/forge\/wp-json\/wp\/v2\/pages\/158","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/code.openark.org\/forge\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/code.openark.org\/forge\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/code.openark.org\/forge\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/code.openark.org\/forge\/wp-json\/wp\/v2\/comments?post=158"}],"version-history":[{"count":15,"href":"https:\/\/code.openark.org\/forge\/wp-json\/wp\/v2\/pages\/158\/revisions"}],"predecessor-version":[{"id":192,"href":"https:\/\/code.openark.org\/forge\/wp-json\/wp\/v2\/pages\/158\/revisions\/192"}],"up":[{"embeddable":true,"href":"https:\/\/code.openark.org\/forge\/wp-json\/wp\/v2\/pages\/147"}],"wp:attachment":[{"href":"https:\/\/code.openark.org\/forge\/wp-json\/wp\/v2\/media?parent=158"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}