{"id":19927,"date":"2026-09-14T18:32:56","date_gmt":"2026-09-14T18:32:56","guid":{"rendered":"https:\/\/www.mailgun.com\/blog\/presentamos-nuevo-depurador-multiplataforma-go\/"},"modified":"2026-09-14T18:32:56","modified_gmt":"2026-09-14T18:32:56","slug":"presentamos-nuevo-depurador-multiplataforma-go","status":"publish","type":"blog","link":"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/","title":{"rendered":"Presentamos un depurador multiplataforma para Go"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">En Mailgun utilizamos Go para gran parte de nuestro desarrollo de servidores, y es genial. Sin embargo, al venir de Python, hay una cosa que he echado mucho de menos:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pod\u00eda insertar esta peque\u00f1a l\u00ednea siempre que me confund\u00eda lo que estaba pasando en el c\u00f3digo y ver exactamente qu\u00e9 ocurr\u00eda. \u00bfPero en Go? No tanto. Cuando empec\u00e9 este proyecto en enero, gdb fallaba en todos los programas en los que lo probaba, delve no funcionaba en OS X y la depuraci\u00f3n de declaraciones de impresi\u00f3n era demasiado lenta y limitada. \u00bfQu\u00e9 se puede hacer en estos casos?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Crear mi propio depurador, por supuesto.<\/p>\n\n\n\r\n    <nav data-content-type=\"longform\" class=\"toc-block longform-spacings px-5 py-6 px-md-6 px-lg-7 py-md-7 bg-light fs-sm rounded-lg\" aria-labelledby=\"toc-title-7999\"><p class=\"h5 m-0\" id=\"toc-title-7999\">\u00cdndice<\/p><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">01<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#godebug\">godebug<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">02<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#como-funciona-esto\">\u00bfC\u00f3mo funciona esto?<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">03<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#uso-de-godebug\">Uso de godebug<\/a><a class=\"scrollme link-body-color\" href=\"#paso-1-instalacion\">Paso 1. Instalaci\u00f3n<\/a><a class=\"scrollme link-body-color\" href=\"#paso-2-establecer-puntos-de-interrupcion\">Paso 2: Establecer puntos de interrupci\u00f3n<\/a><a class=\"scrollme link-body-color\" href=\"#paso-3-ejecuta-tu-programa\">Paso 3: Ejecuta tu programa<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">04<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#pruebalo\">\u00a1Pru\u00e9balo!<\/a><\/div><\/div><\/nav>\n\n\n<h2 class=\"wp-block-heading\">godebug<\/h2>\n\n\n    <div data-content-type=\"longform\" class=\"quote hub-quote longform-spacings d-flex flex-column rounded-lg px-5 py-6 px-md-6 py-md-7 p-lg-7 shadow-sm bg-primary\" data-theme=\"light\">\r\n\r\n        <div class=\"quote-logo mb-3\">\r\n                            <svg height=\"40\" class=\"quote-icon quote-icon-color\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/custom-icons\/quotes-right.svg\"><\/svg>\r\n                    <\/div>\r\n\r\n        <blockquote class=\"quote-content content-body m-0 text-body-color\" id=\"quote-block-2c015495b5f18b1f66c7c5606d075d64\">\r\n            Lo \u00fanico que se interpone en el camino [de un buen depurador de Go] es la escritura de mucho c\u00f3digo de bajo nivel no portable que se comunique con interfaces no documentadas y llenas de errores.        <\/blockquote>\r\n\r\n                    <div class=\"d-flex gap-3 mt-5\">\r\n                                <div class=\"d-flex flex-column align-self-center fs-sm\">\r\n                    <cite class=\"mb-0 fw-bold text-accent fst-normal\" aria-describedby=\"quote-block-2c015495b5f18b1f66c7c5606d075d64\">\r\n                        Rob Pike                    <\/cite>\r\n                                    <\/div>\r\n            <\/div>\r\n            <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/github.com\/mailgun\/godebug\">godebug<\/a>\u00a0es un tipo de depurador diferente. Los depuradores tradicionales para lenguajes compilados utilizan llamadas al sistema de bajo nivel y leen archivos binarios en busca de s\u00edmbolos de depuraci\u00f3n. Son dif\u00edciles de perfeccionar y de portar.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">godebug adopta un enfoque diferente: tomar el c\u00f3digo fuente de un programa de destino, insertar c\u00f3digo de depuraci\u00f3n entre cada l\u00ednea y, a continuaci\u00f3n, compilar y ejecutar el resultado. El resultado es un depurador totalmente funcional que resulta extremadamente portable. De hecho, gracias a\u00a0<a href=\"http:\/\/www.gopherjs.org\/\">gopherjs<\/a>, \u00a1puedes ejecutarlo directamente en tu navegador!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Puedes editar el programa y volver a lanzarlo con el bot\u00f3n \u201cDEBUG IT!\u201d tantas veces como quieras.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfC\u00f3mo funciona esto?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed tienes un diagrama r\u00e1pido de la demostraci\u00f3n anterior:<\/p>\n\n\n\n\n\n<p class=\"wp-block-paragraph\">El c\u00f3digo original se transforma dos veces. En primer lugar, godebug\u00a0insert\u00f3 la instrumentaci\u00f3n de depuraci\u00f3n. Luego, gopherjs compil\u00f3 el resultado a javascript.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Echemos un vistazo al paso de instrumentaci\u00f3n. (Para saber m\u00e1s sobre la parte de gopherjs (que es incre\u00edble), consulta su\u00a0<a href=\"http:\/\/www.gopherjs.org\/\">sitio web<\/a>.) Estas son algunas de las llamadas que inserta godebug:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>godebug.EnterFunc\u00a0<\/code>permite a la biblioteca de tiempo de ejecuci\u00f3n de godebug saber que estamos entrando en una funci\u00f3n. Dado que \u201cnext\u201d no se detiene dentro de las llamadas a funciones, la biblioteca de tiempo de ejecuci\u00f3n toma nota de estas llamadas para saber cu\u00e1ndo omitir l\u00edneas.<\/li>\n\n\n\n<li><code>godebug.ExitFunc\u00a0<\/code>permite a la biblioteca de tiempo de ejecuci\u00f3n saber que estamos saliendo de una funci\u00f3n. Omitido en\u00a0<code>main<\/code>.<\/li>\n\n\n\n<li><code>godebug.Line\u00a0<\/code>hace que el programa se pause y espere una entrada si, y solo si, un comando de usuario o un punto de interrupci\u00f3n se lo indican. Al pausarse, solicita una entrada al usuario y responde a cualquier comando.<\/li>\n\n\n\n<li><code>godebug.Declare\u00a0<\/code>registra el mapeo de nombres de variable a sus valores. Este mapeo es utilizado por el comando print.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Esta es una descripci\u00f3n resumida. Hay otras funciones que inserta godebug, y se han omitido muchos detalles de las funciones anteriores. Sin embargo, estas son las piezas b\u00e1sicas de c\u00f3mo funciona godebug.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Uso de godebug<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Todo lo anterior (menos lo relativo al servidor y a javascript) est\u00e1 empaquetado en la herramienta de l\u00ednea de comandos\u00a0<code>godebug<\/code>. Aqu\u00ed te mostramos c\u00f3mo usarla:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><em>Paso 1. Instalaci\u00f3n<\/em><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>$ go get -u github.com\/mailgun\/godebug<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><em>Paso 2: Establecer puntos de interrupci\u00f3n<\/em><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A\u00f1ade este marcador en cualquier lugar donde quieras un punto de interrupci\u00f3n:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>_ = \"breakpoint\"<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Esta declaraci\u00f3n se convierte en un punto de interrupci\u00f3n al ejecutarse con godebug y, de lo contrario, es una operaci\u00f3n inactiva (no-op).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dado que los puntos de interrupci\u00f3n forman parte del c\u00f3digo fuente, puedes envolver tu propia l\u00f3gica alrededor de ellos. Supongamos que est\u00e1s ejecutando una\u00a0<a href=\"http:\/\/dave.cheney.net\/2013\/06\/09\/writing-table-driven-tests-in-go\">prueba guiada por tablas<\/a>\u00a0con docenas de casos, y uno de los casos de prueba falla: el que prob\u00f3 la entrada\u00a0<code>\"weird string\"<\/code>. Puedes a\u00f1adir este punto de interrupci\u00f3n a tu prueba:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>for _, tt := range myTestCases { if tt.in == \"weird string\" { _ = \"breakpoint\" } ... }<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>godebug test<\/code>\u00a0pausar\u00e1 el programa en la declaraci\u00f3n del marcador, la cual est\u00e1 convenientemente situada justo antes de que se ejecute el caso de prueba fallido.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><em>Paso 3: Ejecuta tu programa<\/em><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Utiliza el comando godebug run:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>godebug run <\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">O, para las pruebas, utiliza el comando godebug test:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>godebug test<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Por defecto, godebug solo a\u00f1adir\u00e1 instrumentaci\u00f3n de depuraci\u00f3n al paquete main (para godebug run) o al paquete que se est\u00e1 probando (para godebug test). No instrumentar\u00e1 ning\u00fan paquete importado. Esto es para reducir la sobrecarga del depurador: cualquier paquete que no te interese se ejecutar\u00e1 con normalidad, a m\u00e1xima velocidad.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Esto significa que,\u00a0<strong>por defecto, no puedes entrar en llamadas a funciones de paquetes importados<\/strong>. \u00a1Pero a veces necesitar\u00e1s hacerlo! Para depurar otros paquetes, pasa la etiqueta\u00a0<code>-instrument<\/code>\u00a0a\u00a0<code>godebug run<\/code>\u00a0o a\u00a0<code>godebug test<\/code>:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>godebug test -instrument=pkgA,pkgB,pkgC pkg\/under\/test<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">El comando anterior instrumentar\u00e1 (y, por tanto, te permitir\u00e1 entrar en)\u00a0<code>pkgA<\/code>,\u00a0<code>pkgB<\/code>,\u00a0<code>pkgC<\/code> y\u00a0<code>pkg\/under\/test<\/code>. A continuaci\u00f3n, compilar\u00e1 y ejecutar\u00e1 las pruebas para\u00a0<code>pkg\/under\/test<\/code>. Se aplica una sem\u00e1ntica similar a\u00a0<code>godebug run<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00a1Pru\u00e9balo!<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">La pr\u00f3xima vez que quieras entender qu\u00e9 ocurre en un programa de Go, prueba\u00a0<a href=\"https:\/\/github.com\/mailgun\/godebug\">godebug<\/a>. Ten en cuenta que todav\u00eda es una herramienta nueva a la que le falta un poco de pulido. En particular, algunas limitaciones conocidas son:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>sobrecarga de rendimiento<\/li>\n\n\n\n<li>puede causar conflictos de lectura si el programa lee desde stdin<\/li>\n\n\n\n<li>no se puede adjuntar a un proceso en ejecuci\u00f3n<\/li>\n\n\n\n<li>debe conocer los paquetes que quieres depurar antes de iniciar la sesi\u00f3n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Dicho esto, me entusiasma esta herramienta y espero que aporte mucho valor a la comunidad de Go. \u00a1Pru\u00e9bala y cu\u00e9ntame qu\u00e9 te parece! Si tienes alg\u00fan problema, me encantar\u00eda saberlo. Abre una incidencia en\u00a0<a href=\"https:\/\/github.com\/mailgun\/godebug\/issues\">https:\/\/github.com\/mailgun\/godebug\/issues<\/a>\u00a0o env\u00eda un email a: dev@godebug.rocks<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00a1Espero que lo disfrutes!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">https:\/\/github.com\/mailgun\/godebug<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>\u00bfQuieres saber m\u00e1s sobre godebug? Aqu\u00ed tienes una charla que di en GoSF, en la que se profundiza en la generaci\u00f3n de c\u00f3digo y la gesti\u00f3n de la concurrencia:<\/em><\/p>\n\n\n\t<div class=\"custom-video\">\r\n\t\t\t\t\t                    <div class=\"iframe-responsive-container lazy-video rounded-lg overflow-hidden \">\r\n                <a href=\"https:\/\/www.youtube.com\/watch?v=qo4RAPxCTa0\" class=\"lazy-video-link\" data-lazy-video=\"qo4RAPxCTa0\" target=\"_blank\" rel=\"nofollow\" role=\"button\" data-source=\"youtube\" data-language=\"es\" data-thumb=\"https:\/\/img.youtube.com\/vi\/qo4RAPxCTa0\/maxresdefault.jpg\" title=\"V\u00eddeo de Sinch\">\r\n                    <div class=\"btn btn-light btn-light-social btn-play btn-play-circle\">\r\n                                                    <svg aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/play.svg\"><\/svg>\r\n                                            <\/div>\r\n                    <img decoding=\"async\"  src=\"https:\/\/img.youtube.com\/vi\/qo4RAPxCTa0\/maxresdefault.jpg\" alt=\"Godebug and the Wonders of Code Generation\">\r\n                <\/a>\r\n            <\/div>\r\n                        <script type=\"application\/ld+json\">\r\n            {\n    \"@context\": \"http:\/\/schema.org\",\n    \"@type\": \"VideoObject\",\n    \"@id\": \"https:\/\/www.youtube.com\/watch?v=qo4RAPxCTa0#VideoObject\",\n    \"thumbnailUrl\": \"https:\/\/img.youtube.com\/vi\/qo4RAPxCTa0\/maxresdefault.jpg\",\n    \"embedUrl\": \"https:\/\/www.youtube.com\/embed\/qo4RAPxCTa0\",\n    \"contentUrl\": \"https:\/\/www.youtube.com\/watch?v=qo4RAPxCTa0\",\n    \"name\": \"Godebug and the Wonders of Code Generation\",\n    \"description\": \"Full post here: Hakkalabs.co\/articles\/godebug-and-the-wonders-of-code-generation\\n\\nABOUT DATA COUNCIL: \\nData Council (https:\/\/www.datacouncil.ai\/) is a community and conference series that provides data professionals with the learning and networking opportunities they need to grow their careers. Make sure to subscribe to our channel for more videos, including DC_THURS, our series of live online interviews with leading data professionals from top open source projects and startups. \\n\\nFOLLOW DATA COUNCIL:\\nTwitter: https:\/\/twitter.com\/DataCouncilAI \\nLinkedIn: https:\/\/www.linkedin.com\/company\/datacouncil-ai \\nFacebook: https:\/\/www.facebook.com\/datacouncilai\\nEventbrite: https:\/\/www.eventbrite.com\/o\/data-council-30357384520 -\\n\\n\\ud83c\\udf9f\\ufe0f GET YOUR TICKET TO AI COUNCIL 2026 \\ud83c\\udf9f\\ufe0f\\nMeet the world's top AI infrastructure minds where architects of AI share what works. Three days of high-quality technical talks and meaningful interactions.\\n\\n\\u2192 https:\/\/aicouncil.com\/sf-2026\\n\\n\\u26a1 FIND US:\\nX: https:\/\/x.com\/AICouncilConf\\nLinkedIn: https:\/\/www.linkedin.com\/company\/aicouncilconf\/\\nWebsite: https:\/\/aicouncil.com\/\",\n    \"uploadDate\": \"2015-04-03T16:52:07+00:00\",\n    \"duration\": \"PT27M20S\"\n}        <\/script>\r\n        \t\t\r\n\t\t\t<\/div>\r\n\r\n\t\r\n","protected":false},"excerpt":{"rendered":"<p>En Mailgun utilizamos Go para gran parte de nuestro desarrollo de servidores, y es genial. Sin embargo, al venir de Python, hay una cosa que he echado mucho de menos:<\/p>\n","protected":false},"author":13,"featured_media":3952,"menu_order":0,"template":"","meta":{"_acf_changed":true,"footnotes":""},"blog_category":[19],"class_list":["post-19927","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog_category-dev-life"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Presentamos un depurador multiplataforma para Go - Transactional Email API Service For Developers | Mailgun<\/title>\n<meta name=\"description\" content=\"Godebug es un nuevo depurador interactivo para Go que funciona en todas las plataformas. Utiliza la generaci\u00f3n de c\u00f3digo fuente en lugar de llamadas al sistema. \u00a1Pru\u00e9balo!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Presentamos un depurador multiplataforma para Go - Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"og:description\" content=\"Godebug es un nuevo depurador interactivo para Go que funciona en todas las plataformas. Utiliza la generaci\u00f3n de c\u00f3digo fuente en lugar de llamadas al sistema. \u00a1Pru\u00e9balo!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/\" \/>\n<meta property=\"og:site_name\" content=\"Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Dev-Life.png\" \/>\n\t<meta property=\"og:image:width\" content=\"720\" \/>\n\t<meta property=\"og:image:height\" content=\"448\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/dev-life\\\/presentamos-nuevo-depurador-multiplataforma-go\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/dev-life\\\/presentamos-nuevo-depurador-multiplataforma-go\\\/\",\"name\":\"Presentamos un depurador multiplataforma para Go - Transactional Email API Service For Developers | Mailgun\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/dev-life\\\/presentamos-nuevo-depurador-multiplataforma-go\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/dev-life\\\/presentamos-nuevo-depurador-multiplataforma-go\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Dev-Life.png\",\"datePublished\":\"2026-09-14T18:32:56+00:00\",\"description\":\"Godebug es un nuevo depurador interactivo para Go que funciona en todas las plataformas. Utiliza la generaci\u00f3n de c\u00f3digo fuente en lugar de llamadas al sistema. \u00a1Pru\u00e9balo!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/dev-life\\\/presentamos-nuevo-depurador-multiplataforma-go\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/dev-life\\\/presentamos-nuevo-depurador-multiplataforma-go\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/dev-life\\\/presentamos-nuevo-depurador-multiplataforma-go\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Dev-Life.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Dev-Life.png\",\"width\":720,\"height\":448},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/dev-life\\\/presentamos-nuevo-depurador-multiplataforma-go\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Presentamos un depurador multiplataforma para Go\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"description\":\"Potentes API de email transaccional que te permiten enviar, recibir y hacer seguimiento de emails, creadas pensando en los desarrolladores. \u00a1Descubre m\u00e1s!\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#organization\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"width\":512,\"height\":512,\"caption\":\"Transactional Email API Service For Developers | Mailgun\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Presentamos un depurador multiplataforma para Go - Transactional Email API Service For Developers | Mailgun","description":"Godebug es un nuevo depurador interactivo para Go que funciona en todas las plataformas. Utiliza la generaci\u00f3n de c\u00f3digo fuente en lugar de llamadas al sistema. \u00a1Pru\u00e9balo!","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:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/","og_locale":"es_ES","og_type":"article","og_title":"Presentamos un depurador multiplataforma para Go - Transactional Email API Service For Developers | Mailgun","og_description":"Godebug es un nuevo depurador interactivo para Go que funciona en todas las plataformas. Utiliza la generaci\u00f3n de c\u00f3digo fuente en lugar de llamadas al sistema. \u00a1Pru\u00e9balo!","og_url":"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/","og_site_name":"Transactional Email API Service For Developers | Mailgun","og_image":[{"width":720,"height":448,"url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Dev-Life.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/","url":"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/","name":"Presentamos un depurador multiplataforma para Go - Transactional Email API Service For Developers | Mailgun","isPartOf":{"@id":"https:\/\/www.mailgun.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/#primaryimage"},"image":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/#primaryimage"},"thumbnailUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Dev-Life.png","datePublished":"2026-09-14T18:32:56+00:00","description":"Godebug es un nuevo depurador interactivo para Go que funciona en todas las plataformas. Utiliza la generaci\u00f3n de c\u00f3digo fuente en lugar de llamadas al sistema. \u00a1Pru\u00e9balo!","breadcrumb":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/#primaryimage","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Dev-Life.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Dev-Life.png","width":720,"height":448},{"@type":"BreadcrumbList","@id":"https:\/\/www.mailgun.com\/es\/blog\/dev-life\/presentamos-nuevo-depurador-multiplataforma-go\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.mailgun.com\/es\/"},{"@type":"ListItem","position":2,"name":"Blog","item":"https:\/\/www.mailgun.com\/es\/blog\/"},{"@type":"ListItem","position":3,"name":"Presentamos un depurador multiplataforma para Go"}]},{"@type":"WebSite","@id":"https:\/\/www.mailgun.com\/es\/#website","url":"https:\/\/www.mailgun.com\/es\/","name":"Transactional Email API Service For Developers | Mailgun","description":"Potentes API de email transaccional que te permiten enviar, recibir y hacer seguimiento de emails, creadas pensando en los desarrolladores. \u00a1Descubre m\u00e1s!","publisher":{"@id":"https:\/\/www.mailgun.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.mailgun.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.mailgun.com\/es\/#organization","name":"Transactional Email API Service For Developers | Mailgun","url":"https:\/\/www.mailgun.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.mailgun.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","width":512,"height":512,"caption":"Transactional Email API Service For Developers | Mailgun"},"image":{"@id":"https:\/\/www.mailgun.com\/es\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog\/19927","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/users\/13"}],"version-history":[{"count":0,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog\/19927\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/media\/3952"}],"wp:attachment":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/media?parent=19927"}],"wp:term":[{"taxonomy":"blog_category","embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog_category?post=19927"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}