{"id":6800,"date":"2018-01-20T19:28:40","date_gmt":"2018-01-20T21:28:40","guid":{"rendered":"http:\/\/gianfratti.com\/?p=6800"},"modified":"2020-09-16T12:40:56","modified_gmt":"2020-09-16T15:40:56","slug":"evops-02-passos-para-diagnosticar-incidente-em-um-servidor-de-aplicativo-em-05-minutos","status":"publish","type":"post","link":"https:\/\/gianfratti.com\/index.php\/evops-02-passos-para-diagnosticar-incidente-em-um-servidor-de-aplicativo-em-05-minutos\/","title":{"rendered":"DevOps \u2013 02 Passos para Diagnosticar Incidente em um Servidor de Aplicativo em 05 Minutos"},"content":{"rendered":"<p><strong>1. Introdu\u00e7\u00e3o<\/strong><\/p>\n<p>Esse artigo tem como finalidade explicar como analisar um servidor de aplica\u00e7\u00e3o ou banco de dados e identificar poss\u00edveis falhas atrav\u00e9s de um r\u00e1pido diagn\u00f3stico. O objetivo \u00e9 que em <strong>05 minutos<\/strong> voc\u00ea tenha descartado ou confirmado se a falha no aplicativo est\u00e1 associada \u00e0 infraestrutura e qual o ativo.<\/p>\n<p>Ou seja, o objetivo \u00e9 atrav\u00e9s de contadores b\u00e1sicos, identificarmos se h\u00e1 um afunilamento de recursos no Servidor que hospeda a aplica\u00e7\u00e3o e caso sim, quem \u00e9 o respons\u00e1vel por esse afuniliamento.<!--more--><\/p>\n<p><strong>2. Estrat\u00e9gia<\/strong><\/p>\n<p>Antes de iniciar, tenha sempre alguns conceitos bem firmados em mente para que sua an\u00e1lise seja r\u00e1pida e objetiva! Tenha em mente esses<strong> 04 conceitos abaixo:<\/strong><\/p>\n<p><strong>Conceito 1:<\/strong> 90% dos incidentes s\u00e3o coisas simples de se diagnosticar.<\/p>\n<p><em>N\u00e3o queria ser um F\u00edsico Qu\u00e2ntico que \u00e9 parecido com um cego num quarto escuro \u00e0 procura de um gato preto que n\u00e3o est\u00e1 l\u00e1.<\/em><\/p>\n<p align=\"center\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6802\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_01.png\" alt=\"\" width=\"435\" height=\"216\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_01.png 435w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_01-300x149.png 300w\" sizes=\"auto, (max-width: 435px) 100vw, 435px\" \/><\/p>\n<p>Tenha em mente que voc\u00ea precisar\u00e1 analisar todos os servidores que comp\u00f5em a estrutura de sua aplica\u00e7\u00e3o.<\/p>\n<p><strong>Conceito 2:<\/strong> Nenhum erro \u00e9 igual ao outro, por mais que os sintomas sejam parecidos, sempre inicie sua an\u00e1lise do marco zero novamente.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6803\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_02.jpg\" alt=\"\" width=\"400\" height=\"300\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_02.jpg 400w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_02-300x225.jpg 300w\" sizes=\"auto, (max-width: 400px) 100vw, 400px\" \/><\/p>\n<p><strong>Conceito 3:<\/strong> Lembre-se que a maioria dos incidentes s\u00e3o efeito domin\u00f3.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6804\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_03.jpg\" alt=\"\" width=\"695\" height=\"536\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_03.jpg 695w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_03-300x231.jpg 300w\" sizes=\"auto, (max-width: 695px) 100vw, 695px\" \/><\/p>\n<p>Ou seja, algo falhou por outro que falhou, que outro que falhou, e assim sucessivamente.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6805\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_04.jpg\" alt=\"\" width=\"630\" height=\"279\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_04.jpg 630w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_04-300x133.jpg 300w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/p>\n<p>Por exemplo, <strong>lock em banco de dados<\/strong> normalmente \u00e9 ocasionado por m\u00e1 execu\u00e7\u00e3o de querys ou store procedures e concorr\u00eancias ocasionadas pela aplica\u00e7\u00e3o, ou pouco recurso no servidor mesmo.<\/p>\n<p>Consumo <strong>excessivo de mem\u00f3ria<\/strong> pode estar sendo ocasionado por um vazamento (<strong>memory leak<\/strong>), ou bug na aplica\u00e7\u00e3o, bem como falta mesmo de recurso de mem\u00f3ria no servidor.<\/p>\n<p><strong>Conceito 04: Entender a aplica\u00e7\u00e3o e o que analisar<\/strong><\/p>\n<p>Saiba como a aplica\u00e7\u00e3o funciona, o que acessa o que, onde os dados s\u00e3o armazenados, quais as melhores pr\u00e1ticas de configura\u00e7\u00e3o, onde os logs de opera\u00e7\u00e3o est\u00e3o armazenados e como interpretar eles, como a aplica\u00e7\u00e3o \u00e9 constitu\u00edda, por exemplo: Web Services, Windows Services, armazenamento em disco e armazenamento em banco de dados, etc. Quais os aplicativos de terceiros e recursos do sistema operacional que sua aplica\u00e7\u00e3o utiliza, por exemplo .NET Framework, Java, Internet Information Services, SNMP, etc.<\/p>\n<p>Assim voc\u00ea poder\u00e1 estender sua an\u00e1lise corretamente inclusive entender <em>\u201co que afeta o que\u201d<\/em>.<\/p>\n<p><strong>3. Passos<\/strong><\/p>\n<p><strong>Primeiro Passo: Diagn\u00f3stico\u00a0 e Desempenho do Servidor (Tempo de Identifica\u00e7\u00e3o: 180 segundos)<\/strong><\/p>\n<p>Abra o Monitor de Desempenho digitando \u201cperfmon\u201d no executar do Windows.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6806\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_05.png\" alt=\"\" width=\"296\" height=\"249\" \/><\/p>\n<p>Em seguida v\u00e1 Desempenho \u2013 Sistema e Inicie o Contador \u201cSystem Diagnostics\u201d<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6807\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_06.png\" alt=\"\" width=\"657\" height=\"277\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_06.png 657w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_06-300x126.png 300w\" sizes=\"auto, (max-width: 657px) 100vw, 657px\" \/><\/p>\n<p>Inicie e espere a coleta, leva em m\u00e9dia 60 segundos, e o tempo m\u00e1ximo \u00e9 de 10 minutos (toler\u00e2ncia).<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6808\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_07.png\" alt=\"\" width=\"565\" height=\"258\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_07.png 565w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_07-300x137.png 300w\" sizes=\"auto, (max-width: 565px) 100vw, 565px\" \/><\/p>\n<p>Em seguida abra o Relat\u00f3rio Diagn\u00f3stico gerado para interpreta\u00e7\u00e3o.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6809\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_08.png\" alt=\"\" width=\"591\" height=\"345\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_08.png 591w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_08-300x175.png 300w\" sizes=\"auto, (max-width: 591px) 100vw, 591px\" \/><\/p>\n<p><u>Diagn\u00f3stico de Sa\u00fade<\/u><\/p>\n<p>Observe o Relat\u00f3rio abaixo e veja que a parte de <strong>Diagn\u00f3stico<\/strong> teve um alerta, referente a o UAC estar desativado e o Servidor n\u00e3o possuir nenhum antivirus instalado. Os demais itens est\u00e3o OK.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6810\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_09.png\" alt=\"\" width=\"983\" height=\"484\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_09.png 983w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_09-300x148.png 300w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_09-768x378.png 768w\" sizes=\"auto, (max-width: 983px) 100vw, 983px\" \/><\/p>\n<p>Caso algum componente apresente uma falha, o Diagn\u00f3stico ir\u00e1 informar e detalhar, com por exemplo problemas de <strong>bit sujo no disco indicando corrup\u00e7\u00e3o<\/strong>.<\/p>\n<p><u>Diagn\u00f3stico de Desempenho<\/u><\/p>\n<p>Dentro ainda do mesmo relat\u00f3rio, vamos avaliar agora se temos problemas relacionados \u00e0 Desempenho.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6811\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_10.png\" alt=\"\" width=\"933\" height=\"168\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_10.png 933w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_10-300x54.png 300w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_10-768x138.png 768w\" sizes=\"auto, (max-width: 933px) 100vw, 933px\" \/><\/p>\n<p>Os itens que devemos sempre observar s\u00e3o: <strong>Processador, Mem\u00f3ria, Disco e Rede<\/strong>. Se h\u00e1 algum afunilamento neles e caso haja, quem est\u00e1 causando o mesmo (<strong>Processo<\/strong>).<\/p>\n<p>Nesse relat\u00f3rio, caso algum dos itens esteja com afunilamento, ele ficar\u00e1 com um STATUS em vermelho. No nosso caso, todos os itens est\u00e3o OK, sendo que todos est\u00e3o ociosos e a mem\u00f3ria est\u00e1 com status normal. Vamos ver no detalhe a mem\u00f3ria. Para isso, no mesmo relat\u00f3rio, clique em <strong>Mem\u00f3ria<\/strong>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6812\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_11.png\" alt=\"\" width=\"1024\" height=\"363\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_11.png 1024w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_11-300x106.png 300w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_11-768x272.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>Podemos observar no detalhe, quais os processos estao consumindo mais mem\u00f3ria e identificar se um processo de nossa aplica\u00e7\u00e3o est\u00e1 consumindo mem\u00f3ria de forma anormal, ou se algum processo de um aplicativo de terceiro que nossa aplica\u00e7\u00e3o dependa est\u00e1 tendo um consumo anormal, ou se \u00e9 apenas falta de mem\u00f3ria no servidor mesmo.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6813\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_12.png\" alt=\"\" width=\"1024\" height=\"237\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_12.png 1024w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_12-300x69.png 300w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_12-768x178.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>Inclusive \u00e9 possivel identificar os contadores separados, <strong>mas isso \u00e9 para uma an\u00e1lise mais complexa<\/strong>. <strong>Nosso objetivo aqui \u00e9 uma an\u00e1lise em 05 minutos para identificar poss\u00edveis afunilamentos de recursos e os respons\u00e1veis pelo mesmo.<\/strong><\/p>\n<p><strong><span style=\"color: #ff0000;\">Lembre-se de executar esse procedimento em cada servidor que faz parte da aplica\u00e7\u00e3o. Caso n\u00e3o possua acesso, solicite ao time respons\u00e1vel a gera\u00e7\u00e3o do relat\u00f3rio e encaminhamento do mesmo a voc\u00ea. De prefer\u00eancia executar a an\u00e1lise no momento do incidente.<\/span> Outro ponto importante, ative essas coletas remotamente ao mesmo tempo, conectando no servidor e ativando.<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6814\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_13.png\" alt=\"\" width=\"339\" height=\"192\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_13.png 339w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_13-300x170.png 300w\" sizes=\"auto, (max-width: 339px) 100vw, 339px\" \/><\/p>\n<p><strong>Segundo Passo: Diagn\u00f3stico de Eventos (Tempo de Identifica\u00e7\u00e3o: 120 segundos)<\/strong><\/p>\n<p>Outro diagn\u00f3stico importante de ser feito e f\u00e1cil de identificar s\u00e3o os eventos gerados pelo Sistema Operacional e Aplicativo. Neles \u00e9 possivel identificar falhas relacionadas ao ambiente e aplicativo e comparar com o diagn\u00f3stico feito no primeiro passo e com logs gerados pela aplica\u00e7\u00e3o.<\/p>\n<p>Para isso, abra o Visualizador de Eventos no Servidor digitando o comando <strong>eventvwr<\/strong> no executar do seu servidor.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6815\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_14.png\" alt=\"\" width=\"444\" height=\"292\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_14.png 444w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_14-300x197.png 300w\" sizes=\"auto, (max-width: 444px) 100vw, 444px\" \/><\/p>\n<p>Em seguida a parte mais simples. Comparar os hor\u00e1rios que ocorrem as falhas com poss\u00edveis eventos, momentos antes ou depois do incidente.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6816\" src=\"http:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_15.png\" alt=\"\" width=\"682\" height=\"174\" srcset=\"https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_15.png 682w, https:\/\/gianfratti.com\/wp-content\/uploads\/2018\/01\/Diagnosticar_Incidente_Prod_15-300x77.png 300w\" sizes=\"auto, (max-width: 682px) 100vw, 682px\" \/><\/p>\n<p>Comparar:<\/p>\n<p>Evento de Aplicativos, inclusive se h\u00e1 eventos por exemplo relacionandos ao Internet Information Services, .NET Framework, JAVA Runtime, Banco de Dados.<\/p>\n<p>Eventos de Sistema, se h\u00e1 erros relacionados a leitura no disco, falha de processamento, parada inesperada de um servi\u00e7o.<\/p>\n<p>Comparar esses eventos a coleta feita pelo Perfmon mais os logs da sua aplica\u00e7\u00e3o.<\/p>\n<p>Lembrando novamente que o objetivo \u00e9 apenas identificar a falha, para depois entender o motivo que ocasiona ela. Descobrindo a falha, voc\u00ea poder\u00e1 tomar a\u00e7\u00f5es r\u00e1pidas para contornar o incidente at\u00e9 sua solu\u00e7ao final. Por exemplo:<\/p>\n<p>\u2013 Rein\u00edcio do Internet Information Services<\/p>\n<p>\u2013 Rein\u00edcio de um servi\u00e7o da aplica\u00e7\u00e3o<\/p>\n<p>Entre outras a\u00e7\u00f5es de rapido resultado.<\/p>\n<p><strong>4. Conclus\u00e3o<\/strong><\/p>\n<p>Esses templates estao dispon\u00edveis nativamente no Windows Server 2008 e Windows Server 2012, bem como nos Windows Clientes (Windows 8 e Windows 10).<\/p>\n<p>O objetivo \u00e9 uma an\u00e1lise rapida em cima de um ambiente e aplica\u00e7\u00e3o para entender o que est\u00e1 impactando o funcionamento. Caso os passos n\u00e3o resolvam, iremos para uma an\u00e1lise mais profunda que envolve:<\/p>\n<p>\u2013 Processos<\/p>\n<p>\u2013 Contadores Espec\u00edficos<\/p>\n<p>\u2013 Ferramentas Adicionais (Sysinternals, Management Studio do SQL, etc.) mas ficar\u00e1 para um pr\u00f3ximo artigo!<\/p>\n<p>Fonte: <a href=\"https:\/\/qualidadeeti.wordpress.com\/2015\/12\/21\/devops-05-passos-para-diagnosticar-um-servidor-de-aplicativo-em-05-minutos\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/qualidadeeti.wordpress.com\/2015\/12\/21\/devops-05-passos-para-diagnosticar-um-servidor-de-aplicativo-em-05-minutos\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>1. Introdu\u00e7\u00e3o Esse artigo tem como finalidade explicar como analisar um servidor de aplica\u00e7\u00e3o ou banco de dados e identificar poss\u00edveis falhas atrav\u00e9s de um r\u00e1pido diagn\u00f3stico. O objetivo \u00e9 que em 05 minutos voc\u00ea tenha descartado ou confirmado se a falha no aplicativo est\u00e1 associada \u00e0 infraestrutura e qual o ativo. Ou seja, o <span class=\"ellipsis\">&hellip;<\/span> <span class=\"more-link-wrap\"><a href=\"https:\/\/gianfratti.com\/index.php\/evops-02-passos-para-diagnosticar-incidente-em-um-servidor-de-aplicativo-em-05-minutos\/\" class=\"more-link\"><span>Read More &rarr;<\/span><\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[201,20,202,226,200],"tags":[],"class_list":["post-6800","post","type-post","status-publish","format-standard","hentry","category-net","category-dicas","category-iis","category-monitoramento","category-troubleshooting"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/posts\/6800","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/comments?post=6800"}],"version-history":[{"count":5,"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/posts\/6800\/revisions"}],"predecessor-version":[{"id":14144,"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/posts\/6800\/revisions\/14144"}],"wp:attachment":[{"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/media?parent=6800"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/categories?post=6800"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gianfratti.com\/index.php\/wp-json\/wp\/v2\/tags?post=6800"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}