{
    "componentChunkName": "component---src-templates-note-note-js",
    "path": "/notes/SRE",
    "result": {"data":{"mdx":{"body":"var _excluded = [\"components\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h2\", null, \"Good Books\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://sre.google/books/\"\n  }, \"https://sre.google/books/\")), mdx(\"li\", {\n    parentName: \"ol\"\n  })), mdx(\"h4\", null, \"random things that ai generated\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"http://www.celeryproject.org/\"\n  }, \"celery\"), \": Celery is an asynchronous task queue/job queue based on distributed message passing\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://docs.djangoproject.com/en/3.0/\"\n  }, \"django\"), \": Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-cloudwatch-metrics.html#loadbalancing-metrics-clb\"\n  }, \"elb\"), \": Provide a reliable solution for load balancing - AWS ELB\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://grafana.com/docs/loki/latest/\"\n  }, \"loki\"), \": Prometheus, but for logs. Loki is an efficient log aggregator which indexes only the labels associated with the logs instead of indexing the entire logs.\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://www.percona.com/doc/percona-monitoring-and-management/index.metrics-monitor.dashboard.html#pmm-dashboard-mysql-list\"\n  }, \"mysql_ec2\"), \": Percona Monitored MySQL EC2 Instances\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://aws.amazon.com/rds/postgresql/\"\n  }, \"pgsql\"), \": USE-RED metrics for Postgres RDS\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://www.slideshare.net/OpsStack/how-to-monitoring-the-sre-golden-signals-ebook/\"\n  }, \"platform_ec2\"), \": System core metrics\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://blog.freshtracks.io/a-deep-dive-into-kubernetes-metrics-part-3-container-resource-metrics-361c5ee46e66\"\n  }, \"platform_k8s_cronjob\"), \": Kubernetes Cronjob\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://blog.freshtracks.io/a-deep-dive-into-kubernetes-metrics-part-3-container-resource-metrics-361c5ee46e66\"\n  }, \"platform_k8s_deployment\"), \": Kubernetes Deployment\"));\n}\n;\nMDXContent.isMDXComponent = true;","inboundReferences":[{"id":"4b188a66-1d5f-59bc-adfb-04886bc04838","slug":"startup"}]}},"pageContext":{"slug":"SRE","node":{"childMdx":{"slug":"SRE"}}}},
    "staticQueryHashes": []}