

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# JSON.DEBUG
<a name="json-debug"></a>

Melaporkan informasi. Subperintah yang didukung adalah:
+ MEMORY <key> [path] – Melaporkan penggunaan memori dalam byte dari nilai JSON. Jalur akan diatur secara default ke root jika tidak disediakan.
+ FIELDS <key> [path] – Melaporkan jumlah bidang di jalur dokumen yang ditentukan. Jalur akan diatur secara default ke root jika tidak disediakan. Setiap nilai JSON non-kontainer dihitung sebagai satu bidang. Objek dan array secara rekursif menghitung satu bidang untuk masing-masing nilai JSON. Setiap nilai kontainer, kecuali kontainer root, dihitung sebagai satu bidang tambahan.
+ HELP – Mencetak pesan bantuan dari perintah.

Sintaksis

```
JSON.DEBUG <subcommand & arguments>
```

Tergantung pada subperintah:

MEMORY
+ Jika jalur adalah sintaksis yang ditingkatkan:
  + Menampilkan array integer yang merepresentasikan ukuran memori (dalam byte) dari nilai JSON di setiap jalur.
  + Mengembalikan array kosong jika kunci Valkey atau Redis OSS tidak ada.
+ Jika jalur adalah sintaksis terbatas:
  + Menampilkan integer, ukuran memori, dan nilai JSON dalam byte.
  + Mengembalikan null jika kunci Valkey atau Redis OSS tidak ada.

FIELD
+ Jika jalur adalah sintaksis yang ditingkatkan:
  + Menampilkan array integer yang merepresentasikan jumlah bidang nilai JSON di setiap jalur.
  + Mengembalikan array kosong jika kunci Valkey atau Redis OSS tidak ada.
+ Jika jalur adalah sintaksis terbatas:
  + Menampilkan integer, jumlah bidang nilai JSON.
  + Mengembalikan null jika kunci Valkey atau Redis OSS tidak ada.

HELP – Menampilkan array pesan bantuan.

**Contoh**

Sintaksis jalur yang ditingkatkan:

```
127.0.0.1:6379> JSON.SET k1 . '[1, 2.3, "foo", true, null, {}, [], {"a":1, "b":2}, [1,2,3]]'
OK
127.0.0.1:6379> JSON.DEBUG MEMORY k1 $[*]
1) (integer) 16
2) (integer) 16
3) (integer) 19
4) (integer) 16
5) (integer) 16
6) (integer) 16
7) (integer) 16
8) (integer) 50
9) (integer) 64
127.0.0.1:6379> JSON.DEBUG FIELDS k1 $[*]
1) (integer) 1
2) (integer) 1
3) (integer) 1
4) (integer) 1
5) (integer) 1
6) (integer) 0
7) (integer) 0
8) (integer) 2
9) (integer) 3
```

Sintaksis jalur terbatas:

```
127.0.0.1:6379> JSON.SET k1 . '{"firstName":"John","lastName":"Smith","age":27,"weight":135.25,"isAlive":true,"address":{"street":"21 2nd Street","city":"New York","state":"NY","zipcode":"10021-3100"},"phoneNumbers":[{"type":"home","number":"212 555-1234"},{"type":"office","number":"646 555-4567"}],"children":[],"spouse":null}'
OK
127.0.0.1:6379> JSON.DEBUG MEMORY k1
(integer) 632
127.0.0.1:6379> JSON.DEBUG MEMORY k1 .phoneNumbers
(integer) 166

127.0.0.1:6379> JSON.DEBUG FIELDS k1
(integer) 19
127.0.0.1:6379> JSON.DEBUG FIELDS k1 .address
(integer) 4

127.0.0.1:6379> JSON.DEBUG HELP
1) JSON.DEBUG MEMORY <key> [path] - report memory size (bytes) of the JSON element. Path defaults to root if not provided.
2) JSON.DEBUG FIELDS <key> [path] - report number of fields in the JSON element. Path defaults to root if not provided.
3) JSON.DEBUG HELP - print help message.
```