Skip to content

Instantly share code, notes, and snippets.

@a-know
Last active September 10, 2020 09:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save a-know/55560ba712d274521ad1b0756c8f0fb3 to your computer and use it in GitHub Desktop.
Save a-know/55560ba712d274521ad1b0756c8f0fb3 to your computer and use it in GitHub Desktop.
template json for Mackerel Custom Dashboard
{
"title": "AppEngine Dashboard",
"memo": "",
"urlPath": "appengine",
"widgets": [
{
"layout": {
"x": 0,
"y": 0,
"width": 24,
"height": 2
},
"markdown": "# HTTP Serve",
"type": "markdown",
"title": ""
},
{
"layout": {
"x": 0,
"y": 2,
"width": 9,
"height": 7
},
"type": "graph",
"title": "HTTP Serve style",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.http.server.response_style.*.*)",
"type": "expression"
}
},
{
"layout": {
"x": 9,
"y": 2,
"width": 5,
"height": 7
},
"fractionSize": 0,
"metric": {
"expression": "sum(role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.http.server.response_style.dynamic.count))",
"type": "expression"
},
"type": "value",
"title": "Response style - dynamic",
"suffix": ""
},
{
"layout": {
"x": 14,
"y": 2,
"width": 5,
"height": 7
},
"fractionSize": 0,
"metric": {
"expression": "sum(role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.http.server.response_style.static.count))",
"type": "expression"
},
"type": "value",
"title": "Response style - static",
"suffix": ""
},
{
"layout": {
"x": 19,
"y": 2,
"width": 5,
"height": 7
},
"fractionSize": 0,
"metric": {
"expression": "sum(role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.http.server.response_style.static.count_cached))",
"type": "expression"
},
"type": "value",
"title": "Response style - static (cached)",
"suffix": ""
},
{
"layout": {
"x": 0,
"y": 9,
"width": 12,
"height": 7
},
"type": "graph",
"title": "HTTP Response count",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.http.server.response_count.*.*)",
"type": "expression"
}
},
{
"layout": {
"x": 12,
"y": 9,
"width": 12,
"height": 7
},
"type": "graph",
"title": "HTTP Response latencies",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.http.server.response_latencies.*.*)",
"type": "expression"
}
},
{
"layout": {
"x": 0,
"y": 16,
"width": 12,
"height": 7
},
"type": "graph",
"title": "HTTP DoS intercept",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.http.server.dos_intercept.count)",
"type": "expression"
}
},
{
"layout": {
"x": 12,
"y": 16,
"width": 12,
"height": 7
},
"type": "graph",
"title": "HTTP quota denial",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.http.server.quota_denial.*)",
"type": "expression"
}
},
{
"layout": {
"x": 0,
"y": 23,
"width": 24,
"height": 2
},
"markdown": "# Memcache",
"type": "markdown",
"title": ""
},
{
"layout": {
"x": 0,
"y": 25,
"width": 8,
"height": 8
},
"type": "graph",
"title": "Memcache operation count",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.memcache.*.operation.*)",
"type": "expression"
}
},
{
"layout": {
"x": 8,
"y": 25,
"width": 8,
"height": 4
},
"fractionSize": 0,
"metric": {
"expression": "sum(role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.memcache.Get.operation.count))",
"type": "expression"
},
"type": "value",
"title": "Memcache operation count - GET",
"suffix": ""
},
{
"layout": {
"x": 16,
"y": 25,
"width": 8,
"height": 4
},
"fractionSize": 0,
"metric": {
"expression": "sum(role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.memcache.Delete.operation.count))",
"type": "expression"
},
"type": "value",
"title": "Memcache operation count - DELETE",
"suffix": ""
},
{
"layout": {
"x": 8,
"y": 29,
"width": 8,
"height": 4
},
"fractionSize": 0,
"metric": {
"expression": "sum(role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.memcache.Set.operation.count))",
"type": "expression"
},
"type": "value",
"title": "Memcache operation count - SET",
"suffix": ""
},
{
"layout": {
"x": 16,
"y": 29,
"width": 8,
"height": 4
},
"fractionSize": 0,
"metric": {
"expression": "sum(role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.memcache.Stats.operation.count))",
"type": "expression"
},
"type": "value",
"title": "Memcache operation count - STATS",
"suffix": ""
},
{
"layout": {
"x": 0,
"y": 33,
"width": 8,
"height": 7
},
"type": "graph",
"title": "Memcache utilization",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.memcache.*.centi_mcu_count.*)",
"type": "expression"
}
},
{
"layout": {
"x": 8,
"y": 33,
"width": 8,
"height": 7
},
"type": "graph",
"title": "Memcache network received bytes",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.memcache.*.bytes.received.*)",
"type": "expression"
}
},
{
"layout": {
"x": 16,
"y": 33,
"width": 8,
"height": 7
},
"type": "graph",
"title": "Memcache network transmitted bytes",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.memcache.*.bytes.sent.*)",
"type": "expression"
}
},
{
"layout": {
"x": 0,
"y": 40,
"width": 24,
"height": 2
},
"markdown": "# System",
"type": "markdown",
"title": ""
},
{
"layout": {
"x": 0,
"y": 42,
"width": 8,
"height": 7
},
"type": "graph",
"title": "CPU Usage (megacycles)",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.system.cpu.usage.*)",
"type": "expression"
}
},
{
"layout": {
"x": 8,
"y": 42,
"width": 8,
"height": 7
},
"type": "graph",
"title": "Memory usage",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.system.memory.*)",
"type": "expression"
}
},
{
"layout": {
"x": 16,
"y": 42,
"width": 8,
"height": 7
},
"type": "graph",
"title": "Network bytes",
"graph": {
"expression": "role(SERVICE_NAME:ROLE_NAME, custom.gcp.appengine.system.network.bytes.*)",
"type": "expression"
}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment