Статьи

3 Общие проблемы, решаемые с помощью JSON

общие проблемы-решенной-с-JSON[Эта статья была написана Марком Конканноном.]

Один из самых распространенных вопросов, которые нам задают клиенты:

«Какой лучший способ записать мои данные?»

Мой ответ всегда:

« Регистрируйтесь, используя формат JSON, где это возможно »

Следующий вопрос, который нам часто задают — (но не так сильно)…

Да, JSON, … Хм, а что опять за JSON?

Таким образом , в формате JSON является:  J AVA S cript  O ▪ Таблица  N otation.

Проще говоря, это способ хранения данных в структурированном формате, где каждый фрагмент данных обычно будет иметь идентификатор (известный как ключ) и значение (которое может быть в нескольких форматах). Он также может иметь вложенную структуру, в которой ключ может иметь несколько дочерних элементов (ключей) и т. Д. Его часто называют версией XML для JavaScript.

Основная причина использования JSON основана на концепции KEY VALUE PAIRS (KVP), которые являются идеальными, потому что они дают вам очень точный контроль над конкретными данными, которые вы хотите искать или извлекать и манипулировать ими.

Простой пример JSON может быть:

{
“car”: {
“make”: “Ford”,
“car_details”: {
“model”: “fiesta”,
“mileage”: 15000,
“color”: “yellow”,
“value”: 20000
}

},
“car”: {
“make”: “Dodge”,
“car_details”: {
“model”: “Viper”,
“mileage”: 30000,
“color”: “yellow”,
“value”: 30000
}

},
“car”: {
“make”: “Ford”,
“car_details”: {
“model”: “fiesta”,
“mileage”: 15000,
“color”: “blue”,
“value”: 20000
}

}

(Не забудьте, что вы можете отправлять любые данные журнала в Пары значения ключа и использовать нашу подсветку ключей и расширенные функции поиска.)

Вы можете начать использовать ключи, чтобы помочь вам нарезать и нарезать кубиками данные в соответствии с вашим сердцем.

Итак, несколько простых запросов, которые вы можете выполнить:

Сколько автомобилей Ford было продано.

Where(car and make=Ford) Calculate(count)

Или

Найти общее количество проданных автомобилей по марке

Where(car) GroupBy(make) Calculate(sum:value)

Все это легко сделать и достичь с помощью простого формата JSON.

Как я надеюсь, вы увидите, что ваши журналы в формате JSON или KVP дают вам огромный контроль над тем, как вы нарезаете и нарезаете данные в своих журналах, чтобы получить необходимую информацию.

Реальный пример на основе веб-журнала Apache может быть

Как долго среднее время ответа на основе URI

Это будет написано как

Where(/.*) GroupBy(Uri) calculate(Average:Request_Time)

Из которого вы получите отличную визуализацию.

визуализация

Но удовольствие от работы с JSON на этом не заканчивается …

Поскольку у вас может быть иерархический формат в ваших событиях журнала, мы можем выставить это отношение «родитель-потомок» в окне просмотра журнала, и сделать его намного проще для чтения и визуализации событий журнала.

Мы также добавили новую небольшую функцию под названием «Развернуть JSON», которая при активации превратит ваш блоб JSON в собственную легко читаемую структуру с отступами.

См. Сравнение скромного события в журнале JSON ниже, до и после «prettifying».

JSON_non_pretty

Перед

JSON_PRETTY
После

Вы можете подумать, что закончили — но подождите, это еще не все.

Теперь мы также выпустили подсветку клавиш в ваших журналах, чтобы вам было легче быстро использовать ключи. Просто нажимая на клавиши, вы можете быстро уточнить журналы, выбранные и подсчитанные для выбранного временного диапазона, чтобы только журналы, которые содержат определенный ключ.

Он также выделяет ключи, которые вы можете использовать для вырезания и нарезки данных журнала.

highlighted_keys

Это только наш первый шаг на гораздо более долгом пути, раскрывающий новые функциональные возможности Keys и JSON, которые, как мы надеемся, облегчат и ускорят навигацию и позволят получить необходимую информацию из данных журналов.

В течение следующих нескольких месяцев мы будем выпускать более крутые функции, например, но в то же время, если у вас есть какие-либо отзывы или предложения по раскрытию ключа enw и форматированию JSON, мы хотели бы услышать это. Пишите нам по электронной почте по адресу offer@logentries.com .