mirror of
https://github.com/XRPLF/xrpl-dev-portal.git
synced 2025-11-22 20:55:50 +00:00
Rename API method categories
This commit is contained in:
@@ -0,0 +1,173 @@
|
||||
---
|
||||
html: fee.html
|
||||
parent: server-info-methods.html
|
||||
blurb: トランザクションコストに関するオープンレジャーの要件の現在の状態を報告します。
|
||||
labels:
|
||||
- 手数料
|
||||
---
|
||||
# fee
|
||||
[[ソース]](https://github.com/ripple/rippled/blob/release/src/ripple/rpc/handlers/Fee1.cpp "Source")
|
||||
|
||||
`fee`コマンドは、[トランザクションコスト](transaction-cost.html)に関するオープンレジャーの要件の現在の状態を報告します。このコマンドを使用するには、[FeeEscalation Amendment][]が有効になっている必要があります。[新規: rippled 0.31.0][]
|
||||
|
||||
これは権限のないユーザーが使用できるパブリックコマンドです。[更新: rippled 0.32.0][新規: rippled 0.32.0]
|
||||
|
||||
## 要求フォーマット
|
||||
要求フォーマットの例:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id":"fee_websocket_example",
|
||||
"command":"fee"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
{
|
||||
"method":"fee",
|
||||
"params":[{}]
|
||||
}
|
||||
```
|
||||
|
||||
*コマンドライン*
|
||||
|
||||
```sh
|
||||
#Syntax: fee
|
||||
rippled fee
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
要求にはパラメーターは含まれていません。
|
||||
|
||||
## 応答フォーマット
|
||||
|
||||
処理が成功した応答の例:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id":"fee_websocket_example",
|
||||
"status":"success",
|
||||
"type":"response",
|
||||
"result":{
|
||||
"current_ledger_size":"14",
|
||||
"current_queue_size":"0",
|
||||
"drops":{
|
||||
"base_fee":"10",
|
||||
"median_fee":"11000",
|
||||
"minimum_fee":"10",
|
||||
"open_ledger_fee":"10"
|
||||
},
|
||||
"expected_ledger_size":"24",
|
||||
"ledger_current_index":26575101,
|
||||
"levels":{
|
||||
"median_level":"281600",
|
||||
"minimum_level":"256",
|
||||
"open_ledger_level":"256",
|
||||
"reference_level":"256"
|
||||
},
|
||||
"max_queue_size":"480"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
200 OK
|
||||
|
||||
{
|
||||
"result":{
|
||||
"current_ledger_size":"56",
|
||||
"current_queue_size":"11",
|
||||
"drops":{
|
||||
"base_fee":"10",
|
||||
"median_fee":"10000",
|
||||
"minimum_fee":"10",
|
||||
"open_ledger_fee":"2653937"
|
||||
},
|
||||
"expected_ledger_size":"55",
|
||||
"ledger_current_index":26575101,
|
||||
"levels":{
|
||||
"median_level":"256000",
|
||||
"minimum_level":"256",
|
||||
"open_ledger_level":"67940792",
|
||||
"reference_level":"256"
|
||||
},
|
||||
"max_queue_size":"1100",
|
||||
"status":"success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
*コマンドライン*
|
||||
|
||||
```json
|
||||
Loading:"/etc/rippled.cfg"
|
||||
Connecting to 127.0.0.1:5005
|
||||
|
||||
{
|
||||
"result" :{
|
||||
"current_ledger_size" :"16",
|
||||
"current_queue_size" :"2",
|
||||
"drops" :{
|
||||
"base_fee" :"10",
|
||||
"median_fee" :"11000",
|
||||
"minimum_fee" :"10",
|
||||
"open_ledger_fee" :"3203982"
|
||||
},
|
||||
"expected_ledger_size" :"15",
|
||||
"ledger_current_index":26575101,
|
||||
"levels" :{
|
||||
"median_level" :"281600",
|
||||
"minimum_level" :"256",
|
||||
"open_ledger_level" :"82021944",
|
||||
"reference_level" :"256"
|
||||
},
|
||||
"max_queue_size" :"300",
|
||||
"status" :"success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
この応答は[標準フォーマット][]に従っており、正常に完了した場合は結果に次のフィールドが含まれます。
|
||||
|
||||
| `Field` | 型 | 説明 |
|
||||
|:---------------------------|:-----------------|:-----------------------------|
|
||||
| `current_ledger_size` | 文字列(整数) | 進行中のレジャーに暫定的に含まれているトランザクションの数。 |
|
||||
| `current_queue_size` | 文字列(整数) | 次のレジャーに追加するためにキューに入れられたトランザクションの数。 |
|
||||
| `drops` | オブジェクト | [XRPのdrop数][]で表されるトランザクションコスト(トランザクションの`Fee`フィールド)に関するさまざまな情報 。 |
|
||||
| `drops.base_fee` | 文字列(整数) | 最小限の負荷でレジャーに[リファレンストランザクション](transaction-cost.html#referenceトランザクションコスト)を追加するのに必要なトランザクションコスト(XRPのdrop数)。 |
|
||||
| `drops.median_fee` | 文字列(整数) | 前の検証済みレジャーに含まれているトランザクションのトランザクションコストのおおよその中央値(XRPのdrop数)。 |
|
||||
| `drops.minimum_fee` | 文字列(整数) | 後のレジャーのキューに[リファレンストランザクション](transaction-cost.html#referenceトランザクションコスト)を入れる際の最少トランザクションコスト(XRPのdrop数)。`base_fee`より大きい場合、トランザクションキューは一杯になっています。 |
|
||||
| `drops.open_ledger_fee` | 文字列(整数) | 現在のオープンレジャーに[リファレンストランザクション](transaction-cost.html#referenceトランザクションコスト)を追加する際に支払う必要がある最少トランザクションコスト(XRPのdrop数)。 |
|
||||
| `expected_ledger_size` | 文字列(整数) | 現行レジャーへ追加される見込みのトランザクションの概数。これは前のレジャーのトランザクション数に基づいています。 |
|
||||
| `ledger_current_index` | 数値 | これらのステータスにより示される現行オープンレジャーの[レジャーインデックス][]。[新規: rippled 0.50.0][] |
|
||||
| `levels` | オブジェクト | トランザクションコスト([手数料レベル][])に関するさまざまな情報。手数料レベルの比率は、その特定トランザクションの最少コストを基準にすべてのトランザクションに適用されます。 |
|
||||
| `levels.median_level` | 文字列(整数) | 前の検証済みレジャーに含まれているトランザクションのトランザクションコストの中央値([手数料レベル][])。 |
|
||||
| `levels.minimum_level` | 文字列(整数) | 今後のレジャーのキューに入れるのに必要となる最少トランザクションコスト([手数料レベル][])。 |
|
||||
| `levels.open_ledger_level` | 文字列(整数) | 現行オープンレジャーにトランザクションを追加するのに必要な最少トランザクションコスト([手数料レベル][])。 |
|
||||
| `levels.reference_level` | 文字列(整数) | 最少トランザクションコストに相当します([手数料レベル][]で表現されます)。 |
|
||||
| `max_queue_size` | 文字列(整数) | [トランザクションキュー](transaction-cost.html#キューに入れられたトランザクション)で現在保持できるトランザクションの最大数。 |
|
||||
|
||||
## 考えられるエラー
|
||||
|
||||
* [汎用エラータイプ][]のすべて。
|
||||
|
||||
|
||||
<!-- TODO: fee levels link to rippled-api-links.md - it is being used one off in a couple of files -->
|
||||
[手数料レベル]: transaction-cost.html#手数料レベル
|
||||
{% include '_snippets/rippled_versions.md' %}
|
||||
{% include '_snippets/rippled-api-links.md' %}
|
||||
@@ -0,0 +1,173 @@
|
||||
---
|
||||
html: fee.html
|
||||
parent: server-info-methods.html
|
||||
blurb: Get information about transaction cost.
|
||||
labels:
|
||||
- Fees
|
||||
---
|
||||
# fee
|
||||
[[Source]](https://github.com/ripple/rippled/blob/release/src/ripple/rpc/handlers/Fee1.cpp "Source")
|
||||
|
||||
The `fee` command reports the current state of the open-ledger requirements for the [transaction cost](transaction-cost.html). This requires the [FeeEscalation amendment][] to be enabled. [New in: rippled 0.31.0][]
|
||||
|
||||
This is a public command available to unprivileged users. [Updated in: rippled 0.32.0][]
|
||||
|
||||
## Request Format
|
||||
An example of the request format:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "fee_websocket_example",
|
||||
"command": "fee"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
{
|
||||
"method": "fee",
|
||||
"params": [{}]
|
||||
}
|
||||
```
|
||||
|
||||
*Commandline*
|
||||
|
||||
```sh
|
||||
#Syntax: fee
|
||||
rippled fee
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
The request does not include any parameters.
|
||||
|
||||
## Response Format
|
||||
|
||||
An example of a successful response:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "fee_websocket_example",
|
||||
"status": "success",
|
||||
"type": "response",
|
||||
"result": {
|
||||
"current_ledger_size": "14",
|
||||
"current_queue_size": "0",
|
||||
"drops": {
|
||||
"base_fee": "10",
|
||||
"median_fee": "11000",
|
||||
"minimum_fee": "10",
|
||||
"open_ledger_fee": "10"
|
||||
},
|
||||
"expected_ledger_size": "24",
|
||||
"ledger_current_index": 26575101,
|
||||
"levels": {
|
||||
"median_level": "281600",
|
||||
"minimum_level": "256",
|
||||
"open_ledger_level": "256",
|
||||
"reference_level": "256"
|
||||
},
|
||||
"max_queue_size": "480"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
200 OK
|
||||
|
||||
{
|
||||
"result": {
|
||||
"current_ledger_size": "56",
|
||||
"current_queue_size": "11",
|
||||
"drops": {
|
||||
"base_fee": "10",
|
||||
"median_fee": "10000",
|
||||
"minimum_fee": "10",
|
||||
"open_ledger_fee": "2653937"
|
||||
},
|
||||
"expected_ledger_size": "55",
|
||||
"ledger_current_index": 26575101,
|
||||
"levels": {
|
||||
"median_level": "256000",
|
||||
"minimum_level": "256",
|
||||
"open_ledger_level": "67940792",
|
||||
"reference_level": "256"
|
||||
},
|
||||
"max_queue_size": "1100",
|
||||
"status": "success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
*Commandline*
|
||||
|
||||
```json
|
||||
Loading: "/etc/rippled.cfg"
|
||||
Connecting to 127.0.0.1:5005
|
||||
|
||||
{
|
||||
"result" : {
|
||||
"current_ledger_size" : "16",
|
||||
"current_queue_size" : "2",
|
||||
"drops" : {
|
||||
"base_fee" : "10",
|
||||
"median_fee" : "11000",
|
||||
"minimum_fee" : "10",
|
||||
"open_ledger_fee" : "3203982"
|
||||
},
|
||||
"expected_ledger_size" : "15",
|
||||
"ledger_current_index": 26575101,
|
||||
"levels" : {
|
||||
"median_level" : "281600",
|
||||
"minimum_level" : "256",
|
||||
"open_ledger_level" : "82021944",
|
||||
"reference_level" : "256"
|
||||
},
|
||||
"max_queue_size" : "300",
|
||||
"status" : "success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
The response follows the [standard format][], with a successful result containing the following fields:
|
||||
|
||||
| `Field` | Type | Description |
|
||||
|:---------------------------|:-----------------|:-----------------------------|
|
||||
| `current_ledger_size` | String (Integer) | Number of transactions provisionally included in the in-progress ledger. |
|
||||
| `current_queue_size` | String (Integer) | Number of transactions currently queued for the next ledger. |
|
||||
| `drops` | Object | Various information about the transaction cost (the `Fee` field of a transaction), in [drops of XRP][]. |
|
||||
| `drops.base_fee` | String (Integer) | The transaction cost required for a [reference transaction](transaction-cost.html#reference-transaction-cost) to be included in a ledger under minimum load, represented in drops of XRP. |
|
||||
| `drops.median_fee` | String (Integer) | An approximation of the median transaction cost among transactions included in the previous validated ledger, represented in drops of XRP. |
|
||||
| `drops.minimum_fee` | String (Integer) | The minimum transaction cost for a [reference transaction](transaction-cost.html#reference-transaction-cost) to be queued for a later ledger, represented in drops of XRP. If greater than `base_fee`, the transaction queue is full. |
|
||||
| `drops.open_ledger_fee` | String (Integer) | The minimum transaction cost that a [reference transaction](transaction-cost.html#reference-transaction-cost) must pay to be included in the current open ledger, represented in drops of XRP. |
|
||||
| `expected_ledger_size` | String (Integer) | The approximate number of transactions expected to be included in the current ledger. This is based on the number of transactions in the previous ledger. |
|
||||
| `ledger_current_index` | Number | The [Ledger Index][] of the current open ledger these stats describe. [New in: rippled 0.50.0][] |
|
||||
| `levels` | Object | Various information about the transaction cost, in [fee levels][]. The ratio in fee levels applies to any transaction relative to the minimum cost of that particular transaction. |
|
||||
| `levels.median_level` | String (Integer) | The median transaction cost among transactions in the previous validated ledger, represented in [fee levels][]. |
|
||||
| `levels.minimum_level` | String (Integer) | The minimum transaction cost required to be queued for a future ledger, represented in [fee levels][]. |
|
||||
| `levels.open_ledger_level` | String (Integer) | The minimum transaction cost required to be included in the current open ledger, represented in [fee levels][]. |
|
||||
| `levels.reference_level` | String (Integer) | The equivalent of the minimum transaction cost, represented in [fee levels][]. |
|
||||
| `max_queue_size` | String (Integer) | The maximum number of transactions that the [transaction queue](transaction-cost.html#queued-transactions) can currently hold. |
|
||||
|
||||
## Possible Errors
|
||||
|
||||
- Any of the [universal error types][].
|
||||
|
||||
|
||||
<!--{# common link defs #}-->
|
||||
{% include '_snippets/rippled-api-links.md' %}
|
||||
{% include '_snippets/tx-type-links.md' %}
|
||||
{% include '_snippets/rippled_versions.md' %}
|
||||
@@ -0,0 +1,156 @@
|
||||
---
|
||||
html: manifest.html
|
||||
parent: server-info-methods.html
|
||||
blurb: Look up the public information about a known validator.
|
||||
labels:
|
||||
- Blockchain
|
||||
---
|
||||
# manifest
|
||||
[[Source]](https://github.com/ripple/rippled/blob/master/src/ripple/rpc/handlers/Manifest.cpp "Source")
|
||||
|
||||
The `{{currentpage.name}}` method reports the current "manifest" information for a given validator public key. The "manifest" is the public portion of that validator's configured token. [Updated in: rippled 1.7.0][]
|
||||
|
||||
|
||||
### Request Format
|
||||
|
||||
An example of the request format:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"command": "{{currentpage.name}}",
|
||||
"public_key": "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
{
|
||||
"method": "{{currentpage.name}}",
|
||||
"params": [{
|
||||
"public_key":"nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p"
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
*Commandline*
|
||||
|
||||
```sh
|
||||
#Syntax: {{currentpage.name}} public_key
|
||||
rippled {{currentpage.name}} nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
The request includes the following parameters:
|
||||
|
||||
| `Field` | Type | Description |
|
||||
|:-------------|:-------|:-----------------------------------|
|
||||
| `public_key` | String | The [base58][]-encoded public key of the validator to look up. This can be the master public key or ephemeral public key. |
|
||||
|
||||
**Note:** The commandline format for this method does not work in rippled v1.5.0. See [issue #3317](https://github.com/ripple/rippled/issues/3317) for details.
|
||||
|
||||
### Response Format
|
||||
|
||||
An example of a successful response:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"result": {
|
||||
"details": {
|
||||
"domain": "",
|
||||
"ephemeral_key": "n9J67zk4B7GpbQV5jRQntbgdKf7TW6894QuG7qq1rE5gvjCu6snA",
|
||||
"master_key": "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p",
|
||||
"seq": 1
|
||||
},
|
||||
"manifest": "JAAAAAFxIe3AkJgOyqs3y+UuiAI27Ff3Mrfbt8e7mjdo06bnGEp5XnMhAhRmvCZmWZXlwShVE9qXs2AVCvhVuA/WGYkTX/vVGBGwdkYwRAIgGnYpIGufURojN2cTXakAM7Vwa0GR7o3osdVlZShroXQCIH9R/Lx1v9rdb4YY2n5nrxdnhSSof3U6V/wIHJmeao5ucBJA9D1iAMo7YFCpb245N3Czc0L1R2Xac0YwQ6XdGT+cZ7yw2n8JbdC3hH8Xu9OUqc867Ee6JmlXtyDHzBdY/hdJCQ==",
|
||||
"requested": "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p"
|
||||
},
|
||||
"status": "success",
|
||||
"type": "response"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
200 OK
|
||||
|
||||
{
|
||||
"result": {
|
||||
"details": {
|
||||
"domain": "",
|
||||
"ephemeral_key": "n9J67zk4B7GpbQV5jRQntbgdKf7TW6894QuG7qq1rE5gvjCu6snA",
|
||||
"master_key": "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p",
|
||||
"seq": 1
|
||||
},
|
||||
"manifest": "JAAAAAFxIe3AkJgOyqs3y+UuiAI27Ff3Mrfbt8e7mjdo06bnGEp5XnMhAhRmvCZmWZXlwShVE9qXs2AVCvhVuA/WGYkTX/vVGBGwdkYwRAIgGnYpIGufURojN2cTXakAM7Vwa0GR7o3osdVlZShroXQCIH9R/Lx1v9rdb4YY2n5nrxdnhSSof3U6V/wIHJmeao5ucBJA9D1iAMo7YFCpb245N3Czc0L1R2Xac0YwQ6XdGT+cZ7yw2n8JbdC3hH8Xu9OUqc867Ee6JmlXtyDHzBdY/hdJCQ==",
|
||||
"requested": "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p",
|
||||
"status": "success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
*Commandline*
|
||||
|
||||
```json
|
||||
Loading: "/etc/rippled.cfg"
|
||||
Connecting to 127.0.0.1:5005
|
||||
|
||||
{
|
||||
"result": {
|
||||
"details": {
|
||||
"domain": "",
|
||||
"ephemeral_key": "n9J67zk4B7GpbQV5jRQntbgdKf7TW6894QuG7qq1rE5gvjCu6snA",
|
||||
"master_key": "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p",
|
||||
"seq": 1
|
||||
},
|
||||
"manifest": "JAAAAAFxIe3AkJgOyqs3y+UuiAI27Ff3Mrfbt8e7mjdo06bnGEp5XnMhAhRmvCZmWZXlwShVE9qXs2AVCvhVuA/WGYkTX/vVGBGwdkYwRAIgGnYpIGufURojN2cTXakAM7Vwa0GR7o3osdVlZShroXQCIH9R/Lx1v9rdb4YY2n5nrxdnhSSof3U6V/wIHJmeao5ucBJA9D1iAMo7YFCpb245N3Czc0L1R2Xac0YwQ6XdGT+cZ7yw2n8JbdC3hH8Xu9OUqc867Ee6JmlXtyDHzBdY/hdJCQ==",
|
||||
"requested": "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p",
|
||||
"status": "success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
<!-- Note, the CLI response above is mocked up to compensate for https://github.com/ripple/rippled/issues/3317 -->
|
||||
|
||||
The response follows the [standard format][], with a successful result containing the following fields:
|
||||
|
||||
| `Field` | Type | Description |
|
||||
|:------------|:-------|:------------------------------------------------------|
|
||||
| `details` | Object | _(May be omitted)_ The data contained in this manifest. Omitted if the server does not have a manifest for the `public_key` from the request. See **Details Object** below for a full description of its contents. |
|
||||
| `manifest` | String | _(May be omitted)_ The full manifest data in base64 format. This data is [serialized](serialization.html) to binary before being base64-encoded. Omitted if the server does not have a manifest for the `public_key` from the request. |
|
||||
| `requested` | String | The `public_key` from the request. |
|
||||
|
||||
#### Details Object
|
||||
|
||||
If provided, the `details` object contains the following fields:
|
||||
|
||||
| `Field` | Type | Description |
|
||||
|:----------------|:-------|:--------------------------------------------------|
|
||||
| `domain` | String | The domain name this validator claims to be associated with. If the manifest does not contain a domain, this is an empty string. |
|
||||
| `ephemeral_key` | String | The ephemeral public key for this validator, in [base58][]. |
|
||||
| `master_key` | String | The master public key for this validator, in [base58][]. |
|
||||
| `seq` | Number | The sequence number of this manifest. This number increases whenever the validator operator updates the validator's token to rotate ephemeral keys or change settings. |
|
||||
|
||||
|
||||
### Possible Errors
|
||||
|
||||
- Any of the [universal error types][].
|
||||
- `invalidParams` - The `public_key` field was missing or specified incorrectly.
|
||||
- `reportingUnsupported` - ([Reporting Mode][] servers only) This method is not available in Reporting Mode.
|
||||
|
||||
<!--{# common link defs #}-->
|
||||
{% include '_snippets/rippled-api-links.md' %}
|
||||
{% include '_snippets/tx-type-links.md' %}
|
||||
{% include '_snippets/rippled_versions.md' %}
|
||||
@@ -0,0 +1,339 @@
|
||||
---
|
||||
html: server_info.html
|
||||
parent: server-info-methods.html
|
||||
blurb: rippledサーバーについての各種情報を、人間が読めるフォーマットでサーバーに要求します。
|
||||
labels:
|
||||
- コアサーバー
|
||||
---
|
||||
# server_info
|
||||
[[ソース]](https://github.com/ripple/rippled/blob/master/src/ripple/rpc/handlers/ServerInfo.cpp "Source")
|
||||
|
||||
`server_info`コマンドは、問い合わせ中の`rippled`サーバーについての各種情報を、人間が読めるフォーマットでサーバーに要求します。
|
||||
|
||||
## 要求フォーマット
|
||||
要求フォーマットの例:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 1,
|
||||
"command": "server_info"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
{
|
||||
"method": "server_info",
|
||||
"params": [
|
||||
{}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
*コマンドライン*
|
||||
|
||||
```sh
|
||||
#Syntax: server_info
|
||||
rippled server_info
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
[試してみる>](websocket-api-tool.html#server_info)
|
||||
|
||||
要求にパラメーターは何も含まれません。
|
||||
|
||||
## 応答フォーマット
|
||||
|
||||
処理が成功した応答の例:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 1,
|
||||
"status": "success",
|
||||
"type": "response",
|
||||
"result": {
|
||||
"info": {
|
||||
"build_version": "0.30.1-rc3",
|
||||
"complete_ledgers": "18611104-18614732",
|
||||
"hostid": "trace",
|
||||
"io_latency_ms": 1,
|
||||
"last_close": {
|
||||
"converge_time_s": 4.003,
|
||||
"proposers": 5
|
||||
},
|
||||
"load": {
|
||||
"job_types": [
|
||||
{
|
||||
"job_type": "untrustedProposal",
|
||||
"per_second": 2
|
||||
},
|
||||
{
|
||||
"in_progress": 1,
|
||||
"job_type": "clientCommand"
|
||||
},
|
||||
{
|
||||
"job_type": "transaction",
|
||||
"per_second": 4
|
||||
},
|
||||
{
|
||||
"job_type": "batch",
|
||||
"per_second": 3
|
||||
},
|
||||
{
|
||||
"job_type": "writeObjects",
|
||||
"per_second": 2
|
||||
},
|
||||
{
|
||||
"job_type": "trustedProposal",
|
||||
"per_second": 1
|
||||
},
|
||||
{
|
||||
"job_type": "peerCommand",
|
||||
"per_second": 108
|
||||
},
|
||||
{
|
||||
"job_type": "diskAccess",
|
||||
"per_second": 1
|
||||
},
|
||||
{
|
||||
"job_type": "processTransaction",
|
||||
"per_second": 4
|
||||
},
|
||||
{
|
||||
"job_type": "WriteNode",
|
||||
"per_second": 63
|
||||
}
|
||||
],
|
||||
"threads": 6
|
||||
},
|
||||
"load_factor": 1000,
|
||||
"load_factor_net": 1000,
|
||||
"peers": 10,
|
||||
"pubkey_node": "n94UE1ukbq6pfZY9j54sv2A1UrEeHZXLbns3xK5CzU9NbNREytaa",
|
||||
"pubkey_validator": "n9KM73uq5BM3Fc6cxG3k5TruvbLc8Ffq17JZBmWC4uP4csL4rFST",
|
||||
"server_state": "proposing",
|
||||
"server_state_duration_us": 92762334,
|
||||
"state_accounting": {
|
||||
"connected": {
|
||||
"duration_us": "150510079",
|
||||
"transitions": 1
|
||||
},
|
||||
"disconnected": {
|
||||
"duration_us": "1827731",
|
||||
"transitions": 1
|
||||
},
|
||||
"full": {
|
||||
"duration_us": "166972201508",
|
||||
"transitions": 1853
|
||||
},
|
||||
"syncing": {
|
||||
"duration_us": "6249156726",
|
||||
"transitions": 1854
|
||||
},
|
||||
"tracking": {
|
||||
"duration_us": "13035222",
|
||||
"transitions": 1854
|
||||
}
|
||||
},
|
||||
"uptime": 173379,
|
||||
"validated_ledger": {
|
||||
"age": 3,
|
||||
"base_fee_xrp": 0.00001,
|
||||
"hash": "04F7CF4EACC57140C8088F6BFDC8A824BB3ED5717C3DAA6642101F9FB446226C",
|
||||
"reserve_base_xrp": 20,
|
||||
"reserve_inc_xrp": 5,
|
||||
"seq": 18614732
|
||||
},
|
||||
"validation_quorum": 4,
|
||||
"validator_list_expires" : "2017-Oct-12 16:06:36"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
200 OK
|
||||
|
||||
{
|
||||
"result" : {
|
||||
"info" : {
|
||||
"build_version" : "0.33.0-hf1",
|
||||
"complete_ledgers" : "24900901-24900984,24901116-24901158",
|
||||
"hostid" : "trace",
|
||||
"io_latency_ms" : 1,
|
||||
"last_close" : {
|
||||
"converge_time_s" : 2.001,
|
||||
"proposers" : 5
|
||||
},
|
||||
"load" : {
|
||||
"job_types" : [
|
||||
{
|
||||
"in_progress" : 1,
|
||||
"job_type" : "clientCommand"
|
||||
},
|
||||
{
|
||||
"job_type" : "transaction",
|
||||
"per_second" : 6
|
||||
},
|
||||
{
|
||||
"job_type" : "batch",
|
||||
"per_second" : 6
|
||||
},
|
||||
{
|
||||
"in_progress" : 1,
|
||||
"job_type" : "advanceLedger"
|
||||
},
|
||||
{
|
||||
"job_type" : "trustedValidation",
|
||||
"per_second" : 1
|
||||
},
|
||||
{
|
||||
"avg_time" : 77,
|
||||
"job_type" : "writeObjects",
|
||||
"over_target" : true,
|
||||
"peak_time" : 2990,
|
||||
"per_second" : 2
|
||||
},
|
||||
{
|
||||
"job_type" : "trustedProposal",
|
||||
"per_second" : 2
|
||||
},
|
||||
{
|
||||
"job_type" : "peerCommand",
|
||||
"per_second" : 205
|
||||
},
|
||||
{
|
||||
"avg_time" : 771,
|
||||
"job_type" : "diskAccess",
|
||||
"over_target" : true,
|
||||
"peak_time" : 1934
|
||||
},
|
||||
{
|
||||
"job_type" : "processTransaction",
|
||||
"per_second" : 6
|
||||
},
|
||||
{
|
||||
"job_type" : "SyncReadNode",
|
||||
"per_second" : 4
|
||||
},
|
||||
{
|
||||
"job_type" : "WriteNode",
|
||||
"per_second" : 235
|
||||
}
|
||||
],
|
||||
"threads" : 6
|
||||
},
|
||||
"load_factor" : 4.765625,
|
||||
"load_factor_local" : 4.765625,
|
||||
"peers" : 10,
|
||||
"pubkey_node" : "n9McNsnzzXQPbg96PEUrrQ6z3wrvgtU4M7c97tncMpSoDzaQvPar",
|
||||
"pubkey_validator" : "n9KM73uq5BM3Fc6cxG3k5TruvbLc8Ffq17JZBmWC4uP4csL4rFST",
|
||||
"published_ledger" : 24901158,
|
||||
"server_state" : "proposing",
|
||||
"server_state_duration_us": 708078257,
|
||||
"state_accounting" : {
|
||||
"connected" : {
|
||||
"duration_us" : "854824665",
|
||||
"transitions" : 2
|
||||
},
|
||||
"disconnected" : {
|
||||
"duration_us" : "2183055",
|
||||
"transitions" : 1
|
||||
},
|
||||
"full" : {
|
||||
"duration_us" : "944104343",
|
||||
"transitions" : 2
|
||||
},
|
||||
"syncing" : {
|
||||
"duration_us" : "9233178",
|
||||
"transitions" : 1
|
||||
},
|
||||
"tracking" : {
|
||||
"duration_us" : "0",
|
||||
"transitions" : 2
|
||||
}
|
||||
},
|
||||
"uptime" : 1792,
|
||||
"validated_ledger" : {
|
||||
"age" : 1,
|
||||
"base_fee_xrp" : 1e-05,
|
||||
"hash" : "D2C122281EB72E64D19B9654A8D3D0FC4207373D3FE5D91AE516685A58874621",
|
||||
"reserve_base_xrp" : 20,
|
||||
"reserve_inc_xrp" : 5,
|
||||
"seq" : 24901185
|
||||
},
|
||||
"validation_quorum" : 4,
|
||||
"validator_list_expires" : "2017-Oct-12 16:06:36"
|
||||
},
|
||||
"status" : "success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
応答は[標準フォーマット][]に従い、結果が正常な場合`info`オブジェクトが唯一のフィールドとして含まれます。
|
||||
|
||||
`info`オブジェクトには、以下のフィールドがいくつか配置される場合があります。
|
||||
|
||||
| `Field` | 型 | 説明 |
|
||||
|:------------------------------------|:--------------------------|:-----------|
|
||||
| `amendment_blocked` | ブール値 | _(省略される場合があります)_`true`の場合、このサーバーは[Amendment blocked](amendments.html#amendment-blocked)の状態です。サーバーがAmendment blockedの状態でない場合、このフィールドは応答から省略されます。[新規: rippled 0.80.0][] |
|
||||
| `build_version` | 文字列 | 実行中の`rippled`バージョンのバージョン番号。 |
|
||||
| `closed_ledger` | オブジェクト | (省略される場合があります)コンセンサスによってまだ検証されていない、最も最近更新を閉鎖したレジャーについての情報。最新の検証済みレジャーが使用可能な場合、このフィールドは応答で省略され、代わりに`validated_ledger`が含まれます。メンバーフィールドは`validated_ledger`フィールドと同じです。 |
|
||||
| `complete_ledgers` | 文字列 | ローカル`rippled`がデータベース内に有するレジャーのバージョンのシーケンス番号の範囲を示す表現。例えば、`24900901-24900984,24901116-24901158`のように、互いに素なシーケンスの場合があります。サーバーに完全なレジャーがない場合(例えば、ネットワークとの同期を始めたばかりの場合)、文字列`empty`になります。 |
|
||||
| `hostid` | 文字列 | admin要求の場合、`rippled`インスタンスを実行するサーバーのホスト名が返されます。それ以外の要求の場合、一意の4文字の単語が返されます。 |
|
||||
| `io_latency_ms` | 数値 | I/O処理の待ち時間(ミリ秒単位)。この数値がそれほど低くない場合、`rippled`サーバーは深刻な負荷の問題を抱えている可能性があります。 |
|
||||
| `last_close` | オブジェクト | サーバーが最後にレジャーを閉鎖したときの情報。これには、コンセンサスの取得に要した時間や、参加した信頼できるバリデータ(検証者)の数が含まれます。 |
|
||||
| `load` | オブジェクト | _(管理者のみ)_ サーバーの現在の負荷状態についての詳細な情報。 |
|
||||
| `load.job_types` | 配列 | _(管理者のみ)_ サーバーが実行している各種ジョブのレートや、各ジョブにかかる時間についての情報。 |
|
||||
| `load.threads` | 数値 | _(管理者のみ)_ サーバーの主要なジョブプール内のスレッドの数。 |
|
||||
| `load_factor` | 数値 | サーバーが現在施行中の、負荷スケーリングされたオープンレジャートランザクションコストを、基本トランザクションコストに適用される乗数として示したもの。例えば、負荷係数`1000`でリファレンストランザクションコストがXRP 10 dropである場合、負荷スケーリングされたトランザクションコストは10,000 drop(0.01 XRP)です。負荷係数は、[個々のサーバーの負荷係数](transaction-cost.html#ローカル負荷コスト)の最高値、クラスターの負荷係数、[オープンレジャーコスト](transaction-cost.html#オープンレジャーコスト)、ネットワーク全体の負荷係数によって決まります。[更新: rippled 0.33.0][新規: rippled 0.33.0] |
|
||||
| `load_factor_local` | 数値 | (省略される場合があります)このサーバーに対する負荷に基づく、[トランザクションコスト][]に適用される現在の乗数。 |
|
||||
| `load_factor_net` | 数値 | (省略される場合があります)ネットワークのその他の部分で使用されている、[トランザクションコスト][]に適用される現在の乗数(他のサーバーから報告された負荷値から推定します)。 |
|
||||
| `load_factor_cluster` | 数値 | (省略される場合があります)[このクラスター](clustering.html)内のサーバーに対する負荷に基づく、[トランザクションコスト][]に適用される現在の乗数。 |
|
||||
| `load_factor_fee_escalation` | 数値 | (省略される場合があります)オープンレジャーに入るために取引が支払う必要がある[トランザクションコスト][]に適用される現在の乗数。[新規: rippled 0.32.0][] |
|
||||
| `load_factor_fee_queue` | 数値 | (省略される場合があります)キューが一杯になっている場合に、キューに入るために取引が支払う必要がある[トランザクションコスト][]に適用される現在の乗数。[新規: rippled 0.32.0][] |
|
||||
| `load_factor_server` | 数値 | (省略される場合があります)サーバーが実施中の負荷係数。[オープンレジャーコスト](transaction-cost.html#オープンレジャーコスト)は含まれません。[新規: rippled 0.33.0][] |
|
||||
| `peers` | 数値 | このサーバーが現在接続している、他の`rippled`サーバーの数。 |
|
||||
| `pubkey_node` | 文字列 | ピアツーピア通信の中でこのサーバーを検証するために使用する公開鍵。この_ノードのキーペア_は、サーバーを初めて起動すると自動的に生成されます。(削除された場合、サーバーは新たなキーペアを作成できます。)構成ファイルにて`[node_seed]`設定オプションを使用すると、永続値を設定できます。これは[クラスター化](clustering.html)に便利です。 |
|
||||
| `pubkey_validator` | 文字列 | _(管理者のみ)_ このノードがレジャーの検証の署名に使用する公開鍵。この_検証キーペア_は、`[validator_token]`または`[validation_seed]`設定フィールドにて生成されます。 |
|
||||
| `server_state` | 文字列 | サーバーのネットワークへの参加の度合いを示す文字列。詳細は、[考えられるサーバーの状態](rippled-server-states.html)を参照してください。 |
|
||||
| `server_state_duration_us` | 数値 | サーバーが現在の状態になってから経過したマイクロ秒数。[新規: rippled 1.2.0][] |
|
||||
| `state_accounting` | オブジェクト | 各種[サーバー状態](rippled-server-states.html)のマップと、サーバーが各状態に費やした時間についての情報。これは、サーバーのネットワーク接続について長期的な健全性を追跡するのに便利です。[新規: rippled 0.30.1][] |
|
||||
| `state_accounting.*.duration_us` | 文字列 | サーバーがこの状態になってから費やしたマイクロ秒数。(サーバーが別の状態に移行するたびに更新されます。)[新規: rippled 0.30.1][] |
|
||||
| `state_accounting.*.transitions` | 数値 | サーバーがこの状態に移行した回数。[新規: rippled 0.30.1][] |
|
||||
| `uptime` | 数値 | サーバーが連続して稼働している秒数。[新規: rippled 0.30.1][] |
|
||||
| `validated_ledger` | オブジェクト | (省略される場合があります)完全に検証された最新のレジャーについての情報。最新の検証済みレジャーが使用できない場合、このフィールドは応答にて省略され、代わりに`closed_ledger`が含まれます。 |
|
||||
| `validated_ledger.age` | 数値 | レジャーの閉鎖以降の秒数。 |
|
||||
| `validated_ledger.base_fee_xrp` | 数値 | XRP単位の基本手数料。0.00005の場合は、`1e-05`などの科学的記数法で表すことができます。 |
|
||||
| `validated_ledger.hash` | 文字列 | 16進数で表された、レジャーの一意のハッシュ |
|
||||
| `validated_ledger.reserve_base_xrp` | 符号なし整数 | すべてのアカウントで準備金として保有しておく必要があるXRPの最少額(drop数ではありません) |
|
||||
| `validated_ledger.reserve_inc_xrp` | 符号なし整数 | アカウントがレジャー内に保有するオブジェクトごとのアカウント準備金に追加するXRP額(drop数ではありません) |
|
||||
| `validated_ledger.seq` | 数値 - [レジャーインデックス][] | 最新の検証済みレジャーのレジャーインデックス |
|
||||
| `validation_quorum` | 数値 | レジャーバージョンの検証に、最低限必要となる信頼できる検証の数。場合によっては、サーバーがさらに検証を要求する場合があります。 |
|
||||
| `validator_list_expires` | 文字列 | _(管理者のみ)_ 現在のバリデータリストの有効期限が切れるタイミングを人間が読み取れる時間でを表示、または、サーバーが発行済みのバリデータリストをロードしていない場合は文字列`unknown`、サーバーが静的なバリデータリストを使用する場合は文字列`never`のいずれかを表示します。[新規: rippled 0.80.1][] |
|
||||
|
||||
**注記:** `closed_ledger`フィールドがあり、`seq`の値が小さい(8桁未満)場合、`rippled`には現在、ピアツーピアネットワークから取得した検証済みレジャーのコピーがないことを表しています。これは、サーバーが現在も同期中である可能性を示しています。接続速度とハードウェア仕様にもよりますが、通常はネットワークとの同期に約5分かかります。
|
||||
|
||||
[トランザクションコスト]: transaction-cost.html
|
||||
|
||||
## 考えられるエラー
|
||||
|
||||
* いずれかの[汎用エラータイプ][]。
|
||||
|
||||
|
||||
{% include '_snippets/rippled_versions.md' %}
|
||||
{% include '_snippets/rippled-api-links.md' %}
|
||||
@@ -0,0 +1,306 @@
|
||||
---
|
||||
html: server_info.html
|
||||
parent: server-info-methods.html
|
||||
blurb: Retrieve status of the server in human-readable format.
|
||||
labels:
|
||||
- Core Server
|
||||
---
|
||||
# server_info
|
||||
[[Source]](https://github.com/ripple/rippled/blob/master/src/ripple/rpc/handlers/ServerInfo.cpp "Source")
|
||||
|
||||
The `server_info` command asks the server for a human-readable version of various information about the `rippled` server being queried.
|
||||
|
||||
## Request Format
|
||||
An example of the request format:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 1,
|
||||
"command": "server_info"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
{
|
||||
"method": "server_info",
|
||||
"params": [
|
||||
{}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
*Commandline*
|
||||
|
||||
```sh
|
||||
#Syntax: server_info
|
||||
rippled server_info
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
[Try it! >](websocket-api-tool.html#server_info)
|
||||
|
||||
The request does not take any parameters.
|
||||
|
||||
## Response Format
|
||||
|
||||
An example of a successful response:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 1,
|
||||
"result": {
|
||||
"info": {
|
||||
"build_version": "1.7.2",
|
||||
"complete_ledgers": "64572720-65887227",
|
||||
"hostid": "LARD",
|
||||
"io_latency_ms": 1,
|
||||
"jq_trans_overflow": "0",
|
||||
"last_close": {
|
||||
"converge_time_s": 3.004,
|
||||
"proposers": 41
|
||||
},
|
||||
"load_factor": 512.578125,
|
||||
"load_factor_server": 1,
|
||||
"peer_disconnects": "365016",
|
||||
"peer_disconnects_resources": "336",
|
||||
"peers": 211,
|
||||
"pubkey_node": "n9MozjnGB3tpULewtTsVtuudg5JqYFyV3QFdAtVLzJaxHcBaxuXD",
|
||||
"server_state": "full",
|
||||
"server_state_duration_us": "3589068181859",
|
||||
"state_accounting": {
|
||||
"connected": {
|
||||
"duration_us": "301410595",
|
||||
"transitions": 2
|
||||
},
|
||||
"disconnected": {
|
||||
"duration_us": "1207534",
|
||||
"transitions": 2
|
||||
},
|
||||
"full": {
|
||||
"duration_us": "3589270527034",
|
||||
"transitions": 2
|
||||
},
|
||||
"syncing": {
|
||||
"duration_us": "6182323",
|
||||
"transitions": 2
|
||||
},
|
||||
"tracking": {
|
||||
"duration_us": "43",
|
||||
"transitions": 2
|
||||
}
|
||||
},
|
||||
"time": "2021-Aug-24 20:46:22.194299 UTC",
|
||||
"uptime": 3589579,
|
||||
"validated_ledger": {
|
||||
"age": 3,
|
||||
"base_fee_xrp": 0.00001,
|
||||
"hash": "F00F0E590242702B895BE378B6A6D365C094A047CFC8B11DD323D16F81CC67A5",
|
||||
"reserve_base_xrp": 20,
|
||||
"reserve_inc_xrp": 5,
|
||||
"seq": 65887227
|
||||
},
|
||||
"validation_quorum": 33
|
||||
}
|
||||
},
|
||||
"status": "success",
|
||||
"type": "response"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
200 OK
|
||||
|
||||
{
|
||||
"result": {
|
||||
"info": {
|
||||
"build_version": "1.7.2",
|
||||
"complete_ledgers": "64735538-65886965",
|
||||
"hostid": "TOLL",
|
||||
"io_latency_ms": 1,
|
||||
"jq_trans_overflow": "3",
|
||||
"last_close": {
|
||||
"converge_time_s": 3,
|
||||
"proposers": 41
|
||||
},
|
||||
"load_factor": 1,
|
||||
"peer_disconnects": "467400",
|
||||
"peer_disconnects_resources": "16316",
|
||||
"peers": 85,
|
||||
"pubkey_node": "n9Mdk7abYaVvded5zic9oDEY3NULv9RmeJ9Z5hgjXX1ycZqAGhTn",
|
||||
"server_state": "full",
|
||||
"server_state_duration_us": "627203282776",
|
||||
"state_accounting": {
|
||||
"connected": {
|
||||
"duration_us": "600242389",
|
||||
"transitions": 40
|
||||
},
|
||||
"disconnected": {
|
||||
"duration_us": "112927",
|
||||
"transitions": 1
|
||||
},
|
||||
"full": {
|
||||
"duration_us": "3591757226163",
|
||||
"transitions": 46
|
||||
},
|
||||
"syncing": {
|
||||
"duration_us": "5304456",
|
||||
"transitions": 7
|
||||
},
|
||||
"tracking": {
|
||||
"duration_us": "13989631",
|
||||
"transitions": 46
|
||||
}
|
||||
},
|
||||
"time": "2021-Aug-24 20:29:53.291350 UTC",
|
||||
"uptime": 3592376,
|
||||
"validated_ledger": {
|
||||
"age": 2,
|
||||
"base_fee_xrp": 0.00001,
|
||||
"hash": "B79D223A27F4EC214C9BA85665B12EE76C1EE2CB887BBCBAFB6484355C43FEFA",
|
||||
"reserve_base_xrp": 20,
|
||||
"reserve_inc_xrp": 5,
|
||||
"seq": 65886965
|
||||
},
|
||||
"validation_quorum": 33
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
*Commandline*
|
||||
|
||||
```json
|
||||
Loading: "/etc/opt/ripple/rippled.cfg"
|
||||
2020-Mar-24 01:28:22.288484766 UTC HTTPClient:NFO Connecting to 127.0.0.1:5005
|
||||
|
||||
{
|
||||
"result": {
|
||||
"info": {
|
||||
"build_version": "1.7.2",
|
||||
"complete_ledgers": "64735538-65886965",
|
||||
"hostid": "TOLL",
|
||||
"io_latency_ms": 1,
|
||||
"jq_trans_overflow": "3",
|
||||
"last_close": {
|
||||
"converge_time_s": 3,
|
||||
"proposers": 41
|
||||
},
|
||||
"load_factor": 1,
|
||||
"peer_disconnects": "467400",
|
||||
"peer_disconnects_resources": "16316",
|
||||
"peers": 85,
|
||||
"pubkey_node": "n9Mdk7abYaVvded5zic9oDEY3NULv9RmeJ9Z5hgjXX1ycZqAGhTn",
|
||||
"server_state": "full",
|
||||
"server_state_duration_us": "627203282776",
|
||||
"state_accounting": {
|
||||
"connected": {
|
||||
"duration_us": "600242389",
|
||||
"transitions": 40
|
||||
},
|
||||
"disconnected": {
|
||||
"duration_us": "112927",
|
||||
"transitions": 1
|
||||
},
|
||||
"full": {
|
||||
"duration_us": "3591757226163",
|
||||
"transitions": 46
|
||||
},
|
||||
"syncing": {
|
||||
"duration_us": "5304456",
|
||||
"transitions": 7
|
||||
},
|
||||
"tracking": {
|
||||
"duration_us": "13989631",
|
||||
"transitions": 46
|
||||
}
|
||||
},
|
||||
"time": "2021-Aug-24 20:29:53.291350 UTC",
|
||||
"uptime": 3592376,
|
||||
"validated_ledger": {
|
||||
"age": 2,
|
||||
"base_fee_xrp": 0.00001,
|
||||
"hash": "B79D223A27F4EC214C9BA85665B12EE76C1EE2CB887BBCBAFB6484355C43FEFA",
|
||||
"reserve_base_xrp": 20,
|
||||
"reserve_inc_xrp": 5,
|
||||
"seq": 65886965
|
||||
},
|
||||
"validation_quorum": 33
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
The response follows the [standard format][], with a successful result containing an `info` object as its only field.
|
||||
|
||||
The `info` object may have some arrangement of the following fields:
|
||||
|
||||
| `Field` | Type | Description |
|
||||
|:------------------------------------|:----------------|:---------------------|
|
||||
| `amendment_blocked` | Boolean | _(May be omitted)_ If `true`, this server is [amendment blocked](amendments.html#amendment-blocked). If the server is not amendment blocked, the response omits this field. [New in: rippled 0.80.0][] |
|
||||
| `build_version` | String | The version number of the running `rippled` version. |
|
||||
| `closed_ledger` | Object | _(May be omitted)_ Information on the most recently closed ledger that has not been validated by consensus. If the most recently validated ledger is available, the response omits this field and includes `validated_ledger` instead. The member fields are the same as the `validated_ledger` field. |
|
||||
| `complete_ledgers` | String | Range expression indicating the sequence numbers of the ledger versions the local `rippled` has in its database. This may be a disjoint sequence such as `24900901-24900984,24901116-24901158`. If the server does not have any complete ledgers (for example, it recently started syncing with the network), this is the string `empty`. |
|
||||
| `hostid` | String | On an admin request, returns the hostname of the server running the `rippled` instance; otherwise, returns a single [RFC-1751][] word based on the [node public key](peer-protocol.html#node-key-pair). |
|
||||
| `io_latency_ms` | Number | Amount of time spent waiting for I/O operations, in milliseconds. If this number is not very, very low, then the `rippled` server is probably having serious load issues. |
|
||||
| `jq_trans_overflow` | String - Number | The number of times (since starting up) that this server has had over 250 transactions waiting to be processed at once. A large number here may mean that your server is unable to handle the transaction load of the XRP Ledger network. For detailed recommendations of future-proof server specifications, see [Capacity Planning](capacity-planning.html). [New in: rippled 0.90.0][] |
|
||||
| `last_close` | Object | Information about the last time the server closed a ledger, including the amount of time it took to reach a consensus and the number of trusted validators participating. |
|
||||
| `last_close.converge_time_s` | Number | The amount of time it took to reach a consensus on the most recently validated ledger version, in seconds. |
|
||||
| `last_close.proposers` | Number | How many trusted validators the server considered (including itself, if configured as a validator) in the consensus process for the most recently validated ledger version. |
|
||||
| `load` | Object | _(Admin only)_ Detailed information about the current load state of the server. |
|
||||
| `load.job_types` | Array | _(Admin only)_ Information about the rate of different types of jobs the server is doing and how much time it spends on each. |
|
||||
| `load.threads` | Number | _(Admin only)_ The number of threads in the server's main job pool. |
|
||||
| `load_factor` | Number | The load-scaled open ledger transaction cost the server is currently enforcing, as a multiplier on the base transaction cost. For example, at `1000` load factor and a reference transaction cost of 10 drops of XRP, the load-scaled transaction cost is 10,000 drops (0.01 XRP). The load factor is determined by the highest of the [individual server's load factor](transaction-cost.html#local-load-cost), the cluster's load factor, the [open ledger cost](transaction-cost.html#open-ledger-cost) and the overall network's load factor. [Updated in: rippled 0.33.0][] |
|
||||
| `load_factor_local` | Number | _(May be omitted)_ Current multiplier to the [transaction cost][] based on load to this server. |
|
||||
| `load_factor_net` | Number | _(May be omitted)_ Current multiplier to the [transaction cost][] being used by the rest of the network (estimated from other servers' reported load values). |
|
||||
| `load_factor_cluster` | Number | _(May be omitted)_ Current multiplier to the [transaction cost][] based on load to servers in [this cluster](clustering.html). |
|
||||
| `load_factor_fee_escalation` | Number | _(May be omitted)_ The current multiplier to the [transaction cost][] that a transaction must pay to get into the open ledger. [New in: rippled 0.32.0][] |
|
||||
| `load_factor_fee_queue` | Number | _(May be omitted)_ The current multiplier to the [transaction cost][] that a transaction must pay to get into the queue, if the queue is full. [New in: rippled 0.32.0][] |
|
||||
| `load_factor_server` | Number | _(May be omitted)_ The load factor the server is enforcing, not including the [open ledger cost](transaction-cost.html#open-ledger-cost). [New in: rippled 0.33.0][] |
|
||||
| `peers` | Number | How many other `rippled` servers this one is currently connected to. |
|
||||
| `pubkey_node` | String | Public key used to verify this server for peer-to-peer communications. This [_node key pair_](peer-protocol.html#node-key-pair) is automatically generated by the server the first time it starts up. (If deleted, the server can create a new pair of keys.) You can set a persistent value in the config file using the `[node_seed]` config option, which is useful for [clustering](clustering.html). |
|
||||
| `pubkey_validator` | String | _(Admin only)_ Public key used by this node to sign ledger validations. This _validation key pair_ is derived from the `[validator_token]` or `[validation_seed]` config field. |
|
||||
| `server_state` | String | A string indicating to what extent the server is participating in the network. See [Possible Server States](rippled-server-states.html) for more details. |
|
||||
| `server_state_duration_us` | Number | The number of consecutive microseconds the server has been in the current state. [New in: rippled 1.2.0][] |
|
||||
| `state_accounting` | Object | A map of various [server states](rippled-server-states.html) with information about the time the server spends in each. This can be useful for tracking the long-term health of your server's connectivity to the network. [New in: rippled 0.30.1][] |
|
||||
| `state_accounting.*.duration_us` | String | The number of microseconds the server has spent in this state. (This is updated whenever the server transitions into another state.) [New in: rippled 0.30.1][] |
|
||||
| `state_accounting.*.transitions` | Number | The number of times the server has changed into this state. [New in: rippled 0.30.1][] |
|
||||
| `time` | String | The current time in UTC, according to the server's clock. [Updated in: rippled 1.5.0][] |
|
||||
| `uptime` | Number | Number of consecutive seconds that the server has been operational. [New in: rippled 0.30.1][] |
|
||||
| `validated_ledger` | Object | _(May be omitted)_ Information about the most recent fully-validated ledger. If the most recent validated ledger is not available, the response omits this field and includes `closed_ledger` instead. |
|
||||
| `validated_ledger.age` | Number | The time since the ledger was closed, in seconds. |
|
||||
| `validated_ledger.base_fee_xrp` | Number | Base fee, in XRP. This may be represented in scientific notation such as `1e-05` for 0.00001. |
|
||||
| `validated_ledger.hash` | String | Unique hash for the ledger, as hexadecimal. |
|
||||
| `validated_ledger.reserve_base_xrp` | Number | Minimum amount of XRP (not drops) necessary for every account to keep in reserve |
|
||||
| `validated_ledger.reserve_inc_xrp` | Number | Amount of XRP (not drops) added to the account reserve for each object an account owns in the ledger. |
|
||||
| `validated_ledger.seq` | Number | The [ledger index][] of the latest validated ledger. |
|
||||
| `validation_quorum` | Number | Minimum number of trusted validations required to validate a ledger version. Some circumstances may cause the server to require more validations. |
|
||||
| `validator_list_expires` | String | _(Admin only)_ Either the human readable time, in UTC, when the current validator list will expire, the string `unknown` if the server has yet to load a published validator list or the string `never` if the server uses a static validator list. [Updated in: rippled 1.5.0][] |
|
||||
|
||||
**Note:** If the `closed_ledger` field is present and has a small `seq` value (less than 8 digits), that indicates `rippled` does not currently have a copy of the validated ledger from the peer-to-peer network. This could mean your server is still syncing. Typically, it takes about 5 minutes to sync with the network, depending on your connection speed and hardware specs.
|
||||
|
||||
## Possible Errors
|
||||
|
||||
* Any of the [universal error types][].
|
||||
|
||||
|
||||
<!--{# common link defs #}-->
|
||||
{% include '_snippets/rippled-api-links.md' %}
|
||||
{% include '_snippets/tx-type-links.md' %}
|
||||
{% include '_snippets/rippled_versions.md' %}
|
||||
@@ -0,0 +1,306 @@
|
||||
---
|
||||
html: server_state.html
|
||||
parent: server-info-methods.html
|
||||
blurb: rippledサーバーの現在の状態に関するさまざまな機械可読の情報を問い合わせます。
|
||||
labels:
|
||||
- コアサーバー
|
||||
---
|
||||
# server_state
|
||||
[[ソース]](https://github.com/ripple/rippled/blob/master/src/ripple/rpc/handlers/ServerState.cpp "Source")
|
||||
|
||||
`server_state`コマンドは、サーバーに対し`rippled`サーバーの現在の状態に関するさまざまな機械可読の情報を問い合わせます。応答は[server_infoメソッド][]の場合とほぼ同じですが、読み取りやすい単位ではなく処理しやすい単位を使用します。(たとえば、XRP値は科学的記数法や10進数値の代わりに整数のdrop数で示され、時刻は秒単位ではなくミリ秒単位で示されます。)
|
||||
|
||||
## 要求フォーマット
|
||||
要求フォーマットの例:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 2,
|
||||
"command": "server_state"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
{
|
||||
"method": "server_state",
|
||||
"params": [
|
||||
{}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
*コマンドライン*
|
||||
|
||||
```sh
|
||||
#Syntax: server_state
|
||||
rippled server_state
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
[試してみる>](websocket-api-tool.html#server_state)
|
||||
|
||||
要求はパラメーターをとりません。
|
||||
|
||||
## 応答フォーマット
|
||||
|
||||
処理が成功した応答の例:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 2,
|
||||
"status": "success",
|
||||
"type": "response",
|
||||
"result": {
|
||||
"state": {
|
||||
"build_version": "0.30.1-rc3",
|
||||
"complete_ledgers": "18611104-18615049",
|
||||
"io_latency_ms": 1,
|
||||
"last_close": {
|
||||
"converge_time": 3003,
|
||||
"proposers": 5
|
||||
},
|
||||
"load": {
|
||||
"job_types": [
|
||||
{
|
||||
"job_type": "untrustedProposal",
|
||||
"peak_time": 1,
|
||||
"per_second": 3
|
||||
},
|
||||
{
|
||||
"in_progress": 1,
|
||||
"job_type": "clientCommand"
|
||||
},
|
||||
{
|
||||
"avg_time": 12,
|
||||
"job_type": "writeObjects",
|
||||
"peak_time": 345,
|
||||
"per_second": 2
|
||||
},
|
||||
{
|
||||
"job_type": "trustedProposal",
|
||||
"per_second": 1
|
||||
},
|
||||
{
|
||||
"job_type": "peerCommand",
|
||||
"per_second": 64
|
||||
},
|
||||
{
|
||||
"avg_time": 33,
|
||||
"job_type": "diskAccess",
|
||||
"peak_time": 526
|
||||
},
|
||||
{
|
||||
"job_type": "WriteNode",
|
||||
"per_second": 55
|
||||
}
|
||||
],
|
||||
"threads": 6
|
||||
},
|
||||
"load_base": 256,
|
||||
"load_factor": 256000,
|
||||
"peers": 10,
|
||||
"pubkey_node": "n94UE1ukbq6pfZY9j54sv2A1UrEeHZXLbns3xK5CzU9NbNREytaa",
|
||||
"pubkey_validator": "n9KM73uq5BM3Fc6cxG3k5TruvbLc8Ffq17JZBmWC4uP4csL4rFST",
|
||||
"server_state": "proposing",
|
||||
"server_state_duration_us": 92762334,
|
||||
"state_accounting": {
|
||||
"connected": {
|
||||
"duration_us": "150510079",
|
||||
"transitions": 1
|
||||
},
|
||||
"disconnected": {
|
||||
"duration_us": "1827731",
|
||||
"transitions": 1
|
||||
},
|
||||
"full": {
|
||||
"duration_us": "168295542987",
|
||||
"transitions": 1865
|
||||
},
|
||||
"syncing": {
|
||||
"duration_us": "6294237352",
|
||||
"transitions": 1866
|
||||
},
|
||||
"tracking": {
|
||||
"duration_us": "13035524",
|
||||
"transitions": 1866
|
||||
}
|
||||
},
|
||||
"uptime": 174748,
|
||||
"validated_ledger": {
|
||||
"base_fee": 10,
|
||||
"close_time": 507693650,
|
||||
"hash": "FEB17B15FB64E3AF8D371E6AAFCFD8B92775BB80AB953803BD73EA8EC75ECA34",
|
||||
"reserve_base": 20000000,
|
||||
"reserve_inc": 5000000,
|
||||
"seq": 18615049
|
||||
},
|
||||
"validation_quorum": 4,
|
||||
"validator_list_expires": 561139596
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
200 OK
|
||||
|
||||
{
|
||||
"result" : {
|
||||
"state" : {
|
||||
"build_version" : "0.30.1-rc3",
|
||||
"complete_ledgers" : "18611104-18615037",
|
||||
"io_latency_ms" : 1,
|
||||
"last_close" : {
|
||||
"converge_time" : 2001,
|
||||
"proposers" : 5
|
||||
},
|
||||
"load" : {
|
||||
"job_types" : [
|
||||
{
|
||||
"job_type" : "untrustedProposal",
|
||||
"per_second" : 2
|
||||
},
|
||||
{
|
||||
"in_progress" : 1,
|
||||
"job_type" : "clientCommand"
|
||||
},
|
||||
{
|
||||
"job_type" : "writeObjects",
|
||||
"per_second" : 2
|
||||
},
|
||||
{
|
||||
"avg_time" : 2,
|
||||
"job_type" : "acceptLedger",
|
||||
"peak_time" : 6
|
||||
},
|
||||
{
|
||||
"job_type" : "trustedProposal",
|
||||
"per_second" : 1
|
||||
},
|
||||
{
|
||||
"job_type" : "peerCommand",
|
||||
"per_second" : 80
|
||||
},
|
||||
{
|
||||
"job_type" : "diskAccess",
|
||||
"per_second" : 1
|
||||
},
|
||||
{
|
||||
"job_type" : "WriteNode",
|
||||
"per_second" : 91
|
||||
}
|
||||
],
|
||||
"threads" : 6
|
||||
},
|
||||
"load_base" : 256,
|
||||
"load_factor" : 256000,
|
||||
"peers" : 10,
|
||||
"pubkey_node" : "n94UE1ukbq6pfZY9j54sv2A1UrEeHZXLbns3xK5CzU9NbNREytaa",
|
||||
"pubkey_validator" : "n9KM73uq5BM3Fc6cxG3k5TruvbLc8Ffq17JZBmWC4uP4csL4rFST",
|
||||
"server_state" : "proposing",
|
||||
"server_state_duration_us": 708078257,
|
||||
"state_accounting" : {
|
||||
"connected" : {
|
||||
"duration_us" : "150510079",
|
||||
"transitions" : 1
|
||||
},
|
||||
"disconnected" : {
|
||||
"duration_us" : "1827731",
|
||||
"transitions" : 1
|
||||
},
|
||||
"full" : {
|
||||
"duration_us" : "168241260112",
|
||||
"transitions" : 1865
|
||||
},
|
||||
"syncing" : {
|
||||
"duration_us" : "6294237352",
|
||||
"transitions" : 1866
|
||||
},
|
||||
"tracking" : {
|
||||
"duration_us" : "13035524",
|
||||
"transitions" : 1866
|
||||
}
|
||||
},
|
||||
"uptime" : 174693,
|
||||
"validated_ledger" : {
|
||||
"base_fee" : 10,
|
||||
"close_time" : 507693592,
|
||||
"hash" : "1C26209AE593C7EB5123363B3152D86514845FBD42CC6B05111D57F62D02B113",
|
||||
"reserve_base" : 20000000,
|
||||
"reserve_inc" : 5000000,
|
||||
"seq" : 18615037
|
||||
},
|
||||
"validation_quorum" : 4,
|
||||
"validator_list_expires" : 561139596
|
||||
},
|
||||
"status" : "success"
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
応答は[標準フォーマット][]に従っており、正常に完了した場合は、結果に唯一のフィールドとして`state`オブジェクトが含まれています。
|
||||
|
||||
`state`オブジェクトには、以下のフィールドが含まれています。
|
||||
|
||||
| `Field` | 型 | 説明 |
|
||||
|:---------------------------------|:-----------------|:-----------------------|
|
||||
| `amendment_blocked` | ブール値 | _(省略される場合があります)_`true`の場合、このサーバーは[Amendment blocked](amendments.html#amendment-blocked)の状態です。サーバーがAmendment blockedではない場合、応答ではこのフィールドが省略されます。[新規: rippled 0.80.0][] |
|
||||
| `build_version` | 文字列 | 実行中の`rippled`バージョンのバージョン番号。 |
|
||||
| `complete_ledgers` | 文字列 | ローカルの`rippled`がデータベース内に有するレジャーバージョンのシーケンス番号の範囲を示す表現。例えば、「2500-5000,32570-7695432」のように互いに素なシーケンスの場合があります。サーバーに完全なレジャーがない場合(例えば、ネットワークとの同期を始めたばかりの場合)、文字列`empty`になります。 |
|
||||
| `closed_ledger` | オブジェクト | (省略される場合があります)コンセンサスによって検証されていない、最新の閉鎖済みレジャーに関する情報。最新の検証済みレジャーが使用可能な場合、応答ではこのフィールドは省略され、代わりに`validated_ledger`が含まれます。メンバーフィールドは`validated_ledger`フィールドと同じです。 |
|
||||
| `io_latency_ms` | 数値 | I/O処理の待機に費やされた時間数(ミリ秒単位)。この数値が極端に低くない場合、`rippled`サーバーでは深刻な負荷の問題が発生している可能性があります。 |
|
||||
| `load` | オブジェクト | _(管理者専用)_ サーバーの現在の負荷状態についての詳細な情報。 |
|
||||
| `load.job_types` | 配列 | _(管理者専用)_ サーバーが実行している各種ジョブのレートや、各ジョブに要する時間についての情報。 |
|
||||
| `load.threads` | 数値 | _(管理者専用)_ サーバーの主要なジョブプール内のスレッド数。 |
|
||||
| `load_base` | 整数 | [トランザクションコスト](transaction-cost.html)の計算で使用されるサーバー負荷のベースライン量です。`load_factor`が`load_base`と同等の場合、基本トランザクションコストのみが適用されます。`load_factor`が`load_base`よりも大きい場合、トランザクションコストにそれらの値の比率が乗算されます。たとえば`load_factor`が`load_base`の2倍である場合、トランザクションコストは2倍になります。 |
|
||||
| `load_factor` | 数値 | サーバーが現在適用している負荷係数。トランザクションコストの乗数は、この値と`load_base`の比率によって決まります。負荷係数は、個別サーバーの最も高い負荷係数、クラスターの負荷係数、[オープンレジャーコスト](transaction-cost.html#オープンレジャーコスト)、およびネットワーク全体の負荷係数によって決定します。[更新: rippled 0.33.0][新規: rippled 0.33.0] |
|
||||
| `load_factor_fee_escalation` | 整数 | (省略される場合があります)オープンレジャーに入るときに[トランザクションコスト][]に適用される現在の乗数([手数料レベル][])。[新規: rippled 0.32.0][] |
|
||||
| `load_factor_fee_queue` | 整数 | (省略される場合があります)キューが一杯になっている場合に、キューへ入るときに[トランザクションコスト][]に適用される現在の乗数([手数料レベル][])。[新規: rippled 0.32.0][] |
|
||||
| `load_factor_fee_reference` | 整数 | (省略される場合があります)負荷スケーリングのない[トランザクションコスト][]([手数料レベル][])。[新規: rippled 0.32.0][] |
|
||||
| `load_factor_server` | 数値 | (省略される場合があります)サーバーが適用している負荷係数。[オープンレジャーコスト](transaction-cost.html#オープンレジャーコスト)は含まれません。[新規: rippled 0.33.0][] |
|
||||
| `peers` | 数値 | このサーバーが現在接続している他の`rippled`サーバーの数。 |
|
||||
| `pubkey_node` | 文字列 | ピアツーピア通信のためにこのサーバーを検証する際に使用される公開鍵。サーバーを初めて起動すると、サーバーにより _ノードキーペア_ が自動的に生成されます。(キーペアが削除されている場合、サーバーは新しいキーペアを作成できます。)`[node_seed]`構成オプションを使用して構成ファイルの永続値を設定できます。これは[クラスター化](clustering.html)で便利です。 |
|
||||
| `pubkey_validator` | 文字列 | _(管理者専用)_ このノードがレジャー検証の署名に使用する公開鍵。_検証キーペア_ は、`[validator_token]`構成フィールドまたは`[validation_seed]`構成フィールドから生成されます。 |
|
||||
| `server_state` | 文字列 | サーバーのネットワークへの参加度を示す文字列。詳細は、[考えられるサーバーの状態](rippled-server-states.html)を参照してください。 |
|
||||
| `server_state_duration_us` | 数値 | サーバーが現在の状態になってから経過した連続マイクロ秒数。[新規: rippled 1.2.0][] |
|
||||
| `state_accounting` | オブジェクト | 各種[サーバー状態](rippled-server-states.html)のマップと、サーバーが各状態に費やした時間についての情報。これは、サーバーのネットワーク接続性の健全性を長期的に追跡するのに便利です。[新規: rippled 0.30.1][] |
|
||||
| `state_accounting.*.duration_us` | 文字列 | サーバーがこの状態になってから経過したマイクロ秒数。(サーバーが別の状態に移行するたびに更新されます。)[新規: rippled 0.30.1][] |
|
||||
| `state_accounting.*.transitions` | 数値 | サーバーがこの状態に移行した回数。[新規: rippled 0.30.1][] |
|
||||
| `uptime` | 数値 | サーバーが連続稼働している秒数。[新規: rippled 0.30.1][] |
|
||||
| `validated_ledger` | オブジェクト | (省略される場合があります)完全に検証された最新のレジャーについての情報。最新の検証済みレジャーが使用できない場合、このフィールドは応答で省略され、代わりに`closed_ledger`が含まれます。 |
|
||||
| `validated_ledger.base_fee` | 符号なし整数 | ネットワークへのトランザクション伝達にかかる基本手数料(XRPのdrop数)。 |
|
||||
| `validated_ledger.close_time` | 数値 | レジャーが閉鎖された時刻([Rippleエポック以降の経過秒数][]) |
|
||||
| `validated_ledger.hash` | 文字列 | 当該レジャーバージョンの一意のハッシュ(16進数) |
|
||||
| `validated_ledger.reserve_base` | 符号なし整数 | すべてのアカウントで準備金として保有する必要がある最小額(XRPのdrop数) |
|
||||
| `validated_ledger.reserve_inc` | 符号なし整数 | アカウントがレジャー内に保有する各アイテムのアカウント準備金に追加する額(XRPのdrop数)。 |
|
||||
| `validated_ledger.seq` | 符号なし整数 | このレジャーの一意のシーケンス番号 |
|
||||
| `validation_quorum` | 数値 | 1つのレジャーバージョンの検証に最低限必要となる信頼できる検証の数。状況によっては、サーバーがさらに検証を要求する場合があります。 |
|
||||
| `validator_list_expires` | 数値 | _(管理者専用)_ 現在のバリデータリストが期限切れになる時点([Rippleエポック以降の経過秒数][])。サーバーが発行済みのバリデータリストをロードしていない場合は0。[新規: rippled 0.80.1][] |
|
||||
|
||||
|
||||
## 考えられるエラー
|
||||
|
||||
* [汎用エラータイプ][]のすべて。
|
||||
|
||||
<!-- TODO: add fee levels and transaction cost to rippled-api-links.md. multiple files are including them one-off, as below -->
|
||||
[手数料レベル]: transaction-cost.html#手数料レベル
|
||||
[トランザクションコスト]: transaction-cost.html
|
||||
{% include '_snippets/rippled_versions.md' %}
|
||||
{% include '_snippets/rippled-api-links.md' %}
|
||||
{% include '_snippets/tx-type-links.md' %}
|
||||
@@ -0,0 +1,318 @@
|
||||
---
|
||||
html: server_state.html
|
||||
parent: server-info-methods.html
|
||||
blurb: Retrieve status of the server in machine-readable format.
|
||||
labels:
|
||||
- Core Server
|
||||
---
|
||||
# server_state
|
||||
[[Source]](https://github.com/ripple/rippled/blob/master/src/ripple/rpc/handlers/ServerState.cpp "Source")
|
||||
|
||||
The `server_state` command asks the server for various machine-readable information about the `rippled` server's current state. The response is almost the same as the [server_info method][], but uses units that are easier to process instead of easier to read. (For example, XRP values are given in integer drops instead of scientific notation or decimal values, and time is given in milliseconds instead of seconds.)
|
||||
|
||||
## Request Format
|
||||
An example of the request format:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 2,
|
||||
"command": "server_state"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
{
|
||||
"method": "server_state",
|
||||
"params": [
|
||||
{}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
*Commandline*
|
||||
|
||||
```sh
|
||||
#Syntax: server_state
|
||||
rippled server_state
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
[Try it! >](websocket-api-tool.html#server_state)
|
||||
|
||||
The request does not takes any parameters.
|
||||
|
||||
## Response Format
|
||||
|
||||
An example of a successful response:
|
||||
|
||||
<!-- MULTICODE_BLOCK_START -->
|
||||
|
||||
*WebSocket*
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 1,
|
||||
"result": {
|
||||
"state": {
|
||||
"build_version": "1.7.2",
|
||||
"complete_ledgers": "64572720-65887201",
|
||||
"io_latency_ms": 1,
|
||||
"jq_trans_overflow": "0",
|
||||
"last_close": {
|
||||
"converge_time": 3005,
|
||||
"proposers": 41
|
||||
},
|
||||
"load_base": 256,
|
||||
"load_factor": 256,
|
||||
"load_factor_fee_escalation": 256,
|
||||
"load_factor_fee_queue": 256,
|
||||
"load_factor_fee_reference": 256,
|
||||
"load_factor_server": 256,
|
||||
"peer_disconnects": "365006",
|
||||
"peer_disconnects_resources": "336",
|
||||
"peers": 216,
|
||||
"pubkey_node": "n9MozjnGB3tpULewtTsVtuudg5JqYFyV3QFdAtVLzJaxHcBaxuXD",
|
||||
"server_state": "full",
|
||||
"server_state_duration_us": "3588969453592",
|
||||
"state_accounting": {
|
||||
"connected": {
|
||||
"duration_us": "301410595",
|
||||
"transitions": 2
|
||||
},
|
||||
"disconnected": {
|
||||
"duration_us": "1207534",
|
||||
"transitions": 2
|
||||
},
|
||||
"full": {
|
||||
"duration_us": "3589171798767",
|
||||
"transitions": 2
|
||||
},
|
||||
"syncing": {
|
||||
"duration_us": "6182323",
|
||||
"transitions": 2
|
||||
},
|
||||
"tracking": {
|
||||
"duration_us": "43",
|
||||
"transitions": 2
|
||||
}
|
||||
},
|
||||
"time": "2021-Aug-24 20:44:43.466048 UTC",
|
||||
"uptime": 3589480,
|
||||
"validated_ledger": {
|
||||
"base_fee": 10,
|
||||
"close_time": 683153081,
|
||||
"hash": "B52AC3876412A152FE9C0442801E685D148D05448D0238587DBA256330A98FD3",
|
||||
"reserve_base": 20000000,
|
||||
"reserve_inc": 5000000,
|
||||
"seq": 65887201
|
||||
},
|
||||
"validation_quorum": 33
|
||||
}
|
||||
},
|
||||
"status": "success",
|
||||
"type": "response"
|
||||
}
|
||||
```
|
||||
|
||||
*JSON-RPC*
|
||||
|
||||
```json
|
||||
200 OK
|
||||
|
||||
Headers
|
||||
|
||||
{
|
||||
"result": {
|
||||
"state": {
|
||||
"build_version": "1.7.2",
|
||||
"complete_ledgers": "65844785-65887184",
|
||||
"io_latency_ms": 3,
|
||||
"jq_trans_overflow": "580",
|
||||
"last_close": {
|
||||
"converge_time": 3012,
|
||||
"proposers": 41
|
||||
},
|
||||
"load_base": 256,
|
||||
"load_factor": 134022,
|
||||
"load_factor_fee_escalation": 134022,
|
||||
"load_factor_fee_queue": 256,
|
||||
"load_factor_fee_reference": 256,
|
||||
"load_factor_server": 256,
|
||||
"peer_disconnects": "792367",
|
||||
"peer_disconnects_resources": "7273",
|
||||
"peers": 72,
|
||||
"pubkey_node": "n9LNvsFiYfFf8va6pma2PHGJKVLSyZweN1iBAkJQSeHw4GjM8gvN",
|
||||
"server_state": "full",
|
||||
"server_state_duration_us": "422128665555",
|
||||
"state_accounting": {
|
||||
"connected": {
|
||||
"duration_us": "172799714",
|
||||
"transitions": 1
|
||||
},
|
||||
"disconnected": {
|
||||
"duration_us": "309059",
|
||||
"transitions": 1
|
||||
},
|
||||
"full": {
|
||||
"duration_us": "6020429212246",
|
||||
"transitions": 143
|
||||
},
|
||||
"syncing": {
|
||||
"duration_us": "413813232",
|
||||
"transitions": 152
|
||||
},
|
||||
"tracking": {
|
||||
"duration_us": "266553605",
|
||||
"transitions": 152
|
||||
}
|
||||
},
|
||||
"time": "2021-Aug-24 20:43:43.043406 UTC",
|
||||
"uptime": 6021282,
|
||||
"validated_ledger": {
|
||||
"base_fee": 10,
|
||||
"close_time": 683153020,
|
||||
"hash": "ABEF3D24015E8B6B7184B4ABCEDC0E0E3AA4F0677FAB91C40B1E500707C1F3E5",
|
||||
"reserve_base": 20000000,
|
||||
"reserve_inc": 5000000,
|
||||
"seq": 65887184
|
||||
},
|
||||
"validation_quorum": 33
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
*Commandline*
|
||||
|
||||
```json
|
||||
Loading: "/etc/opt/ripple/rippled.cfg"
|
||||
2020-Mar-24 01:30:08.646201720 UTC HTTPClient:NFO Connecting to 127.0.0.1:5005
|
||||
|
||||
Headers
|
||||
|
||||
{
|
||||
"result": {
|
||||
"state": {
|
||||
"build_version": "1.7.2",
|
||||
"complete_ledgers": "65844785-65887184",
|
||||
"io_latency_ms": 3,
|
||||
"jq_trans_overflow": "580",
|
||||
"last_close": {
|
||||
"converge_time": 3012,
|
||||
"proposers": 41
|
||||
},
|
||||
"load_base": 256,
|
||||
"load_factor": 134022,
|
||||
"load_factor_fee_escalation": 134022,
|
||||
"load_factor_fee_queue": 256,
|
||||
"load_factor_fee_reference": 256,
|
||||
"load_factor_server": 256,
|
||||
"peer_disconnects": "792367",
|
||||
"peer_disconnects_resources": "7273",
|
||||
"peers": 72,
|
||||
"pubkey_node": "n9LNvsFiYfFf8va6pma2PHGJKVLSyZweN1iBAkJQSeHw4GjM8gvN",
|
||||
"server_state": "full",
|
||||
"server_state_duration_us": "422128665555",
|
||||
"state_accounting": {
|
||||
"connected": {
|
||||
"duration_us": "172799714",
|
||||
"transitions": 1
|
||||
},
|
||||
"disconnected": {
|
||||
"duration_us": "309059",
|
||||
"transitions": 1
|
||||
},
|
||||
"full": {
|
||||
"duration_us": "6020429212246",
|
||||
"transitions": 143
|
||||
},
|
||||
"syncing": {
|
||||
"duration_us": "413813232",
|
||||
"transitions": 152
|
||||
},
|
||||
"tracking": {
|
||||
"duration_us": "266553605",
|
||||
"transitions": 152
|
||||
}
|
||||
},
|
||||
"time": "2021-Aug-24 20:43:43.043406 UTC",
|
||||
"uptime": 6021282,
|
||||
"validated_ledger": {
|
||||
"base_fee": 10,
|
||||
"close_time": 683153020,
|
||||
"hash": "ABEF3D24015E8B6B7184B4ABCEDC0E0E3AA4F0677FAB91C40B1E500707C1F3E5",
|
||||
"reserve_base": 20000000,
|
||||
"reserve_inc": 5000000,
|
||||
"seq": 65887184
|
||||
},
|
||||
"validation_quorum": 33
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<!-- MULTICODE_BLOCK_END -->
|
||||
|
||||
The response follows the [standard format][], with a successful result containing a `state` object as its only field.
|
||||
|
||||
The `state` object may have some arrangement of the following fields:
|
||||
|
||||
| `Field` | Type | Description |
|
||||
|:---------------------------------|:----------------|:------------------------|
|
||||
| `amendment_blocked` | Boolean | _(May be omitted)_ If `true`, this server is [amendment blocked](amendments.html#amendment-blocked). If the server is not amendment blocked, the response omits this field. [New in: rippled 0.80.0][] |
|
||||
| `build_version` | String | The version number of the running `rippled` version. |
|
||||
| `complete_ledgers` | String | Range expression indicating the sequence numbers of the ledger versions the local `rippled` has in its database. It is possible to be a disjoint sequence, e.g. "2500-5000,32570-7695432". If the server does not have any complete ledgers (for example, it recently started syncing with the network), this is the string `empty`. |
|
||||
| `closed_ledger` | Object | _(May be omitted)_ Information on the most recently closed ledger that has not been validated by consensus. If the most recently validated ledger is available, the response omits this field and includes `validated_ledger` instead. The member fields are the same as the `validated_ledger` field. |
|
||||
| `io_latency_ms` | Number | Amount of time spent waiting for I/O operations, in milliseconds. If this number is not very, very low, then the `rippled` server is probably having serious load issues. |
|
||||
| `jq_trans_overflow` | String - Number | The number of times this server has had over 250 transactions waiting to be processed at once. A large number here may mean that your server is unable to handle the transaction load of the XRP Ledger network. For detailed recommendations of future-proof server specifications, see [Capacity Planning](capacity-planning.html). [New in: rippled 0.90.0][] |
|
||||
| `last_close` | Object | Information about the last time the server closed a ledger, including the amount of time it took to reach a consensus and the number of trusted validators participating. |
|
||||
| `last_close.converge_time` | Number | The amount of time it took to reach a consensus on the most recently validated ledger version, in milliseconds. |
|
||||
| `last_close.proposers` | Number | How many trusted validators the server considered (including itself, if configured as a validator) in the consensus process for the most recently validated ledger version. |
|
||||
| `load` | Object | _(Admin only)_ Detailed information about the current load state of the server. |
|
||||
| `load.job_types` | Array | _(Admin only)_ Information about the rate of different types of jobs the server is doing and how much time it spends on each. |
|
||||
| `load.threads` | Number | _(Admin only)_ The number of threads in the server's main job pool. |
|
||||
| `load_base` | Integer | This is the baseline amount of server load used in [transaction cost](transaction-cost.html) calculations. If the `load_factor` is equal to the `load_base` then only the base transaction cost is enforced. If the `load_factor` is higher than the `load_base`, then transaction costs are multiplied by the ratio between them. For example, if the `load_factor` is double the `load_base`, then transaction costs are doubled. |
|
||||
| `load_factor` | Number | The load factor the server is currently enforcing. The ratio between this value and the `load_base` determines the multiplier for transaction costs. The load factor is determined by the highest of the individual server's load factor, cluster's load factor, the [open ledger cost](transaction-cost.html#open-ledger-cost), and the overall network's load factor. [Updated in: rippled 0.33.0][] |
|
||||
| `load_factor_fee_escalation` | Number | _(May be omitted)_ The current multiplier to the [transaction cost][] to get into the open ledger, in [fee levels][]. [New in: rippled 0.32.0][] |
|
||||
| `load_factor_fee_queue` | Number | _(May be omitted)_ The current multiplier to the [transaction cost][] to get into the queue, if the queue is full, in [fee levels][]. [New in: rippled 0.32.0][] |
|
||||
| `load_factor_fee_reference` | Number | _(May be omitted)_ The [transaction cost][] with no load scaling, in [fee levels][]. [New in: rippled 0.32.0][] |
|
||||
| `load_factor_server` | Number | _(May be omitted)_ The load factor the server is enforcing, not including the [open ledger cost](transaction-cost.html#open-ledger-cost). [New in: rippled 0.33.0][] |
|
||||
| `peers` | Number | How many other `rippled` servers this one is currently connected to. |
|
||||
| `pubkey_node` | String | Public key used to verify this server for peer-to-peer communications. This _node key pair_ is automatically generated by the server the first time it starts up. (If deleted, the server can create a new pair of keys.) You can set a persistent value in the config file using the `[node_seed]` config option, which is useful for [clustering](clustering.html). |
|
||||
| `pubkey_validator` | String | _(Admin only)_ Public key used by this node to sign ledger validations. This _validation key pair_ is derived from the `[validator_token]` or `[validation_seed]` config field. |
|
||||
| `server_state` | String | A string indicating to what extent the server is participating in the network. See [Possible Server States](rippled-server-states.html) for more details. |
|
||||
| `server_state_duration_us` | Number | The number of consecutive microseconds the server has been in the current state. [New in: rippled 1.2.0][] |
|
||||
| `state_accounting` | Object | A map of various [server states](rippled-server-states.html) with information about the time the server spends in each. This can be useful for tracking the long-term health of your server's connectivity to the network. [New in: rippled 0.30.1][] |
|
||||
| `state_accounting.*.duration_us` | String | The number of microseconds the server has spent in this state. (This is updated whenever the server transitions into another state.) [New in: rippled 0.30.1][] |
|
||||
| `state_accounting.*.transitions` | Number | The number of times the server has changed into this state. [New in: rippled 0.30.1][] |
|
||||
| `time` | String | The current time in UTC, according to the server's clock. [Updated in: rippled 1.5.0][] |
|
||||
| `uptime` | Number | Number of consecutive seconds that the server has been operational. [New in: rippled 0.30.1][] |
|
||||
| `validated_ledger` | Object | _(May be omitted)_ Information about the most recent fully-validated ledger. If the most recent validated ledger is not available, the response omits this field and includes `closed_ledger` instead. |
|
||||
| `validated_ledger.base_fee` | Number | Base fee, in drops of XRP, for propagating a transaction to the network. |
|
||||
| `validated_ledger.close_time` | Number | Time this ledger was closed, in [seconds since the Ripple Epoch][]. |
|
||||
| `validated_ledger.hash` | String | Unique hash of this ledger version, as hexadecimal. |
|
||||
| `validated_ledger.reserve_base` | Number | The minimum [account reserve](reserves.html), as of the most recent validated ledger version. |
|
||||
| `validated_ledger.reserve_inc` | Number | The [owner reserve](reserves.html) for each item an account owns, as of the most recent validated ledger version. |
|
||||
| `validated_ledger.seq` | Number | The [ledger index][] of the most recently validated ledger version. |
|
||||
| `validation_quorum` | Number | Minimum number of trusted validations required to validate a ledger version. Some circumstances may cause the server to require more validations. |
|
||||
| `validator_list_expires` | Number | _(Admin only)_ When the current validator list will expire, in [seconds since the Ripple Epoch][], or 0 if the server has yet to load a published validator list. [New in: rippled 0.80.1][] |
|
||||
|
||||
|
||||
## Possible Errors
|
||||
|
||||
* Any of the [universal error types][].
|
||||
|
||||
|
||||
<!--{# common link defs #}-->
|
||||
{% include '_snippets/rippled-api-links.md' %}
|
||||
{% include '_snippets/tx-type-links.md' %}
|
||||
{% include '_snippets/rippled_versions.md' %}
|
||||
Reference in New Issue
Block a user