Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Leitura de Logs oriundos do ElasticSearch

Prezados, boa noite!

Estou montando uma aplicação com uso do framework Vue cuja finalidade é "pegar" os Logs que são gerados pelo ElasticSearch. Um colega da minha equipe de trabalho me passou um arquivo JSON extraído do ElasticSearch cujo formato não é muito peculiar aos arquivos JSON que conheço. A ideia da aplicação é capturar todos esses dados que estão no JSON cujo o formato é o seguinte:

[
    {
      "_source" : {
        "dados" : {
          "codigoErro" : 1030,
          "detalhesErro" : "Erro de login.........."
        },
        "ip" : "172.17.248.230",
        "host" : "RFXXXXXXXXXXXXX",
        "usuario" : "CPF",
        "versao" : "1.02.28",
        "momento" : "2022-10-19T18:00:35.276"
      }
    }
   ]

Criei o arquivo db.json e ao rodar npm json-server --watch db.json de modo que pudesse ver o arquivo JSON no browser é gerado o seguinte erro:

     Loading db/db.json
  Done
Error: Data must be an object. Found array.

Pesquisei no Github e no stackoverflow e não encontrei um resposta que pudesse me ajudar nessa questão.

Pergunto: Esse tipo de erro está relacionado ao formato do arquivo JSON?

1 resposta
solução!

Oii, Luiz! Tudo bem?

Peço desculpas pela demora para te responder.

No formato não, o erro que você está recebendo indica que o json-server espera que o arquivo JSON contenha um objeto, mas você está fornecendo um array de objetos. Uma sugestão para resolver esse problema seria envolver o array de objetos em um objeto.

Espero que essa sugestão te ajude!

Abraço, Luiz!