{"id":2659,"date":"2020-03-12T09:31:09","date_gmt":"2020-03-12T08:31:09","guid":{"rendered":"https:\/\/geko2.factoryfy.com\/send-docker-logs-to-stackdriver-using-gcplogs\/"},"modified":"2021-11-03T17:41:17","modified_gmt":"2021-11-03T16:41:17","slug":"send-docker-logs-to-stackdriver-using-gcplogs","status":"publish","type":"post","link":"https:\/\/geko.cloud\/en\/send-docker-logs-to-stackdriver-using-gcplogs\/","title":{"rendered":"Send docker logs to Stackdriver using gcplogs"},"content":{"rendered":"<p>When it comes to logging solutions\u00a0you can either choose a managed or an unmanaged solution. If you decide to go with the latter and you are in Google Cloud Platform the recommended option is\u00a0<strong>Stackdriver Logging<\/strong>.<\/p>\n<p>Google\u00a0<strong><span style=\"color: #000000;\"><a href=\"https:\/\/cloud.google.com\/logging\/docs\/agent\">offers a custom fluentd based package<\/a><\/span><\/strong> to send logs to stackdriver\u00a0(we&#8217;ll talk about it in an upcoming post) but if you are only concerned about docker logs and want to avoid installing stuff in the compute instances there is an easier option: <strong>gcplogs<\/strong>.<\/p>\n<h2><strong>Requirements<\/strong><\/h2>\n<p>To be able to send logs to Stackdriver the first you need to do is to create a service account and assign it to your compute instances. The following permissions must be set on the new service account:<\/p>\n<ul>\n<li>role\/metricWriter<\/li>\n<li>role\/loggingWriter<\/li>\n<\/ul>\n<p>You might also need to set the following scope in the compute instance or the instance template that should be using the service account:<\/p>\n<ul>\n<li>scope: cloud-platform<\/li>\n<\/ul>\n<p>We won&#8217;t go over it step-by-step, I&#8217;m assuming that you already know how to do that.<\/p>\n<h2><strong>Tell docker to use gcplogs driver<\/strong><\/h2>\n<p><span style=\"color: #000000;\"><strong>WARNING:<\/strong> Using gcplogs driver will prevent you from inspecting logs with the &#8220;docker logs&#8221; command, you will only be able to access them from Stackdriver Logging.<\/span><\/p>\n<p>This driver is already shipped with docker, so you won&#8217;t need to install anything besides docker daemon. Depending on how we run the containers the usage of the driver might differ slightly.<\/p>\n<p><strong>Using docker run<\/strong><\/p>\n<div class=\"wp-block-codemirror-blocks code-block \">\n<pre class=\"CodeMirror\" data-setting=\"{\">docker run --log-driver=gcplogs ...<\/pre>\n<\/div>\n<p><strong>Using docker-compose<\/strong><\/p>\n<div class=\"wp-block-codemirror-blocks code-block \">\n<pre class=\"CodeMirror\" data-setting=\"{\">nginx:\r\n    image: nginx\r\n    container_name: nginx\r\n    logging:\r\n        driver: gcplogs\r\n    ports:\r\n        - 80:80<\/pre>\n<\/div>\n<h2><strong>Can I send logs from external sources?<\/strong><\/h2>\n<p>Sure! If you would like to send docker logs to Stackdriver from outside GCP environment (for example, from an AWS instance) you still can do it! You just need to set the environment variables with the credentials and start docker with a few additional parameters.<\/p>\n<p>First, you will need to set the GOOGLE_APPLICATION_CREDENTIALS variable (there are official docs about this:\u00a0https:\/\/docs.docker.com\/machine\/drivers\/gce\/). You should be able to use the same service account we created above.<\/p>\n<p>Then you just need to run docker with the following parameters:<\/p>\n<div class=\"wp-block-codemirror-blocks code-block \">\n<pre class=\"CodeMirror\" data-setting=\"{\">docker run --log-driver=gcplogs \r\n--log-opt gcp-project=test-project\r\n--log-opt gcp-meta-zone=west1 \r\n--log-opt gcp-meta-name=`hostname` \r\nyour\/application<\/pre>\n<\/div>\n<h2><strong>Visualizing logs<\/strong><\/h2>\n<p>By default all the logs are grouped by instance. If you have an autoscaler and therefore multiple replicas of the container running you might want to filter the logs based on the container name. To do so you just need to write the desired query:<\/p>\n<div class=\"wp-block-codemirror-blocks code-block \">\n<pre class=\"CodeMirror\" data-setting=\"{\">resource.type=\"gce_instance\" \"my_container_name\"<\/pre>\n<\/div>\n<p>Stackdriver offers you the option to store queries to access them anytime without writing them again. To do so just write your rule and click &#8220;Save Search&#8221;. Then, you&#8217;ll find it under &#8220;Show library&#8221;:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1239\" src=\"https:\/\/geko2.factoryfy.com\/wp-content\/uploads\/gcplogs.png\" alt=\"\" width=\"301\" height=\"73\" \/><\/p>\n<p>And if you just want to see ALL the logs sent by docker you can click on the dropdown menu &#8220;All logs&#8221; and select &#8220;docker-gcplogs-driver&#8221;. By setting this option you&#8217;ll be able to visualize all the logs that were sent using this driver.<\/p>\n<h2><strong>To summarize<\/strong><\/h2>\n<p>As you can see it was pretty easy to set everything up. Although it is usually recommended to use stackdriver logging agent in my opinion this is still a valid solution and might be of some use when you don&#8217;t want or don&#8217;t have time to pack a custom image or install additional stuff in the instances.<\/p>\n<p>The most anoying part is the creation of the service account and setting the correct permissions and scopes, but you would have to deal with that also when using stackdriver logging agent.<\/p>\n<p>I hope this post was of any use to some of you. <a href=\"https:\/\/geko.cloud\/en\/contact\/\">Do not hesitate to contact us<\/a> if you would like us to help you with your projects. See you in the next one!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>When it comes to logging solutions\u00a0you can either choose a managed or an unmanaged solution. If you decide to go with the latter and you are in Google Cloud Platform the recommended option is\u00a0Stackdriver Logging. Google\u00a0offers a custom fluentd based package to send logs to stackdriver\u00a0(we&#8217;ll talk about it in an upcoming post) but if [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":2326,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[67],"tags":[74],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Send docker logs to Stackdriver using gcplogs<\/title>\n<meta name=\"description\" content=\"How to send to stackdriver the logs of our dockers running on Google Compute Instances. This time, we will use the docker gcplogs driver that comes with the docker daemon instead of using the stackdriver log agent, although both are valid solutions.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Send docker logs to Stackdriver using gcplogs\" \/>\n<meta property=\"og:description\" content=\"En este post hablaremos de c\u00f3mo enviar a stackdriver los logs de nuestros dockers que se ejecutan en Google Compute Instances. En esta ocasi\u00f3n, utilizaremos el driver gcplogs de docker que viene con el demonio docker en lugar de utilizar el agente de logs de stackdriver, aunque ambas son soluciones v\u00e1lidas.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/\" \/>\n<meta property=\"og:site_name\" content=\"Geko Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2020-03-12T08:31:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-11-03T16:41:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png\" \/>\n\t<meta property=\"og:image:width\" content=\"900\" \/>\n\t<meta property=\"og:image:height\" content=\"250\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Xavi Miranda\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@geko_cloud\" \/>\n<meta name=\"twitter:site\" content=\"@geko_cloud\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/\"},\"author\":{\"name\":\"Xavi Miranda\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/d496fb33d6ad37fe134ef9fb225dc732\"},\"headline\":\"Send docker logs to Stackdriver using gcplogs\",\"datePublished\":\"2020-03-12T08:31:09+00:00\",\"dateModified\":\"2021-11-03T16:41:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/\"},\"wordCount\":593,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/geko.cloud\/es\/#organization\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png\",\"keywords\":[\"Docker\"],\"articleSection\":[\"Labs\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/\",\"url\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/\",\"name\":\"Send docker logs to Stackdriver using gcplogs\",\"isPartOf\":{\"@id\":\"https:\/\/geko.cloud\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png\",\"datePublished\":\"2020-03-12T08:31:09+00:00\",\"dateModified\":\"2021-11-03T16:41:17+00:00\",\"description\":\"How to send to stackdriver the logs of our dockers running on Google Compute Instances. This time, we will use the docker gcplogs driver that comes with the docker daemon instead of using the stackdriver log agent, although both are valid solutions.\",\"breadcrumb\":{\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#primaryimage\",\"url\":\"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png\",\"contentUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png\",\"width\":900,\"height\":250,\"caption\":\"Docker Stackdriver logo\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/geko.cloud\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Send docker logs to Stackdriver using gcplogs\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/geko.cloud\/es\/#website\",\"url\":\"https:\/\/geko.cloud\/es\/\",\"name\":\"Geko Cloud\",\"description\":\"Servicios de consultor\u00eda cloud y devops\",\"publisher\":{\"@id\":\"https:\/\/geko.cloud\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/geko.cloud\/es\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/geko.cloud\/es\/#organization\",\"name\":\"Geko Cloud\",\"url\":\"https:\/\/geko.cloud\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png\",\"contentUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png\",\"width\":1650,\"height\":809,\"caption\":\"Geko Cloud\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/geko_cloud\",\"https:\/\/www.instagram.com\/gekocloud\/\",\"https:\/\/www.linkedin.com\/company\/gekocloud\",\"https:\/\/www.youtube.com\/channel\/UC5EFLCqUM7fEaXSa_0nWowQ\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/d496fb33d6ad37fe134ef9fb225dc732\",\"name\":\"Xavi Miranda\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/aa0e61120a4b0a629b0679d9e341758d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/aa0e61120a4b0a629b0679d9e341758d?s=96&d=mm&r=g\",\"caption\":\"Xavi Miranda\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Send docker logs to Stackdriver using gcplogs","description":"How to send to stackdriver the logs of our dockers running on Google Compute Instances. This time, we will use the docker gcplogs driver that comes with the docker daemon instead of using the stackdriver log agent, although both are valid solutions.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/","og_locale":"en_US","og_type":"article","og_title":"Send docker logs to Stackdriver using gcplogs","og_description":"En este post hablaremos de c\u00f3mo enviar a stackdriver los logs de nuestros dockers que se ejecutan en Google Compute Instances. En esta ocasi\u00f3n, utilizaremos el driver gcplogs de docker que viene con el demonio docker en lugar de utilizar el agente de logs de stackdriver, aunque ambas son soluciones v\u00e1lidas.","og_url":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/","og_site_name":"Geko Cloud","article_published_time":"2020-03-12T08:31:09+00:00","article_modified_time":"2021-11-03T16:41:17+00:00","og_image":[{"width":900,"height":250,"url":"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png","type":"image\/png"}],"author":"Xavi Miranda","twitter_card":"summary_large_image","twitter_creator":"@geko_cloud","twitter_site":"@geko_cloud","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#article","isPartOf":{"@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/"},"author":{"name":"Xavi Miranda","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/d496fb33d6ad37fe134ef9fb225dc732"},"headline":"Send docker logs to Stackdriver using gcplogs","datePublished":"2020-03-12T08:31:09+00:00","dateModified":"2021-11-03T16:41:17+00:00","mainEntityOfPage":{"@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/"},"wordCount":593,"commentCount":0,"publisher":{"@id":"https:\/\/geko.cloud\/es\/#organization"},"image":{"@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#primaryimage"},"thumbnailUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png","keywords":["Docker"],"articleSection":["Labs"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/","url":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/","name":"Send docker logs to Stackdriver using gcplogs","isPartOf":{"@id":"https:\/\/geko.cloud\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#primaryimage"},"image":{"@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#primaryimage"},"thumbnailUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png","datePublished":"2020-03-12T08:31:09+00:00","dateModified":"2021-11-03T16:41:17+00:00","description":"How to send to stackdriver the logs of our dockers running on Google Compute Instances. This time, we will use the docker gcplogs driver that comes with the docker daemon instead of using the stackdriver log agent, although both are valid solutions.","breadcrumb":{"@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#primaryimage","url":"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png","contentUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/gcplogs_title.png","width":900,"height":250,"caption":"Docker Stackdriver logo"},{"@type":"BreadcrumbList","@id":"https:\/\/geko.cloud\/es\/enviar-registros-docker-stackdriver-gcplogs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/geko.cloud\/en\/"},{"@type":"ListItem","position":2,"name":"Send docker logs to Stackdriver using gcplogs"}]},{"@type":"WebSite","@id":"https:\/\/geko.cloud\/es\/#website","url":"https:\/\/geko.cloud\/es\/","name":"Geko Cloud","description":"Servicios de consultor\u00eda cloud y devops","publisher":{"@id":"https:\/\/geko.cloud\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/geko.cloud\/es\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/geko.cloud\/es\/#organization","name":"Geko Cloud","url":"https:\/\/geko.cloud\/es\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/","url":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png","contentUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png","width":1650,"height":809,"caption":"Geko Cloud"},"image":{"@id":"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/geko_cloud","https:\/\/www.instagram.com\/gekocloud\/","https:\/\/www.linkedin.com\/company\/gekocloud","https:\/\/www.youtube.com\/channel\/UC5EFLCqUM7fEaXSa_0nWowQ"]},{"@type":"Person","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/d496fb33d6ad37fe134ef9fb225dc732","name":"Xavi Miranda","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/aa0e61120a4b0a629b0679d9e341758d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/aa0e61120a4b0a629b0679d9e341758d?s=96&d=mm&r=g","caption":"Xavi Miranda"}}]}},"_links":{"self":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts\/2659"}],"collection":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/comments?post=2659"}],"version-history":[{"count":3,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts\/2659\/revisions"}],"predecessor-version":[{"id":5204,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts\/2659\/revisions\/5204"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/media\/2326"}],"wp:attachment":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/media?parent=2659"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/categories?post=2659"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/tags?post=2659"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}