hanode.get

Apraksts

integer/array hanode.get(object parameters)

Metode ļauj izgūt Augstas pieejamības klastera mezglu sarakstu atbilstoši norādītajiem parametriem.

Šī metode ir pieejama tikai Super admin lietotāju tipiem. Plašāku informāciju skatiet sadaļā Lietotāju lomas.

Parametri

(object) Parametri, kas nosaka vēlamo izvadi.

Metode atbalsta šādus parametrus.

Parametrs Tips Apraksts
ha_nodeids ID/array Atgriezt tikai mezglus ar norādītajiem mezglu ID.
filter object Atgriezt tikai tos rezultātus, kas precīzi atbilst dotajam filtram.

Pieņem objektu, kurā atslēgas ir īpašību nosaukumi, bet vērtības ir vai nu viena vērtība, vai vērtību masīvs, ar ko salīdzināt.

Atbalstītās īpašības: name, address, status.
sortfield string/array Kārtot rezultātu pēc norādītajām īpašībām.

Iespējamās vērtības: name, lastaccess, status.
countOutput flag Šie parametri ir aprakstīti atsauces komentārā.
limit integer
output query
preservekeys boolean
sortorder string/array

Atgrieztās vērtības

(integer/array) Atgriež vienu no šīm vērtībām:

  • objektu masīvu;
  • iegūto objektu skaitu, ja ir izmantots parametrs countOutput.

Piemēri

Iegūt pēc statusa sakārtotu mezglu sarakstu

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "hanode.get",
    "params": {
        "preservekeys": true,
        "sortfield": "status",
        "sortorder": "DESC"
    },
    "id": 1
}

Atbilde:

{
  "jsonrpc": "2.0",
  "result": {
    "ckuo7i1nw000h0sajj3l3hh8u": {
      "ha_nodeid": "ckuo7i1nw000h0sajj3l3hh8u",
      "name": "node-active",
      "address": "192.168.1.13",
      "port": "10051",
      "lastaccess": "1635335704",
      "status": "3"
    },
    "ckuo7i1nw000e0sajwfttc1mp": {
      "ha_nodeid": "ckuo7i1nw000e0sajwfttc1mp",
      "name": "node6",
      "address": "192.168.1.10",
      "port": "10053",
      "lastaccess": "1635332902",
      "status": "2"
    },
    "ckuo7i1nv000c0sajz85xcrtt": {
      "ha_nodeid": "ckuo7i1nv000c0sajz85xcrtt",
      "name": "node4",
      "address": "192.168.1.8",
      "port": "10052",
      "lastaccess": "1635334214",
      "status": "1"
    },
    "ckuo7i1nv000a0saj1fcdkeu4": {
      "ha_nodeid": "ckuo7i1nv000a0saj1fcdkeu4",
      "name": "node2",
      "address": "192.168.1.6",
      "port": "10051",
      "lastaccess": "1635335705",
      "status": "0"
    }
  },
  "id": 1
}

Iegūt konkrētu mezglu sarakstu pēc to ID

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "hanode.get",
    "params": {
        "ha_nodeids": ["ckuo7i1nw000e0sajwfttc1mp", "ckuo7i1nv000c0sajz85xcrtt"]
    },
    "id": 1
}

Atbilde:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "ha_nodeid": "ckuo7i1nv000c0sajz85xcrtt",
            "name": "node4",
            "address": "192.168.1.8",
            "port": "10052",
            "lastaccess": "1635334214",
            "status": "1"
        },
        {
            "ha_nodeid": "ckuo7i1nw000e0sajwfttc1mp",
            "name": "node6",
            "address": "192.168.1.10",
            "port": "10053",
            "lastaccess": "1635332902",
            "status": "2"
        }
    ],
    "id": 1
}

Iegūt apturēto mezglu sarakstu

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "hanode.get",
    "params": {
        "output": ["ha_nodeid", "address", "port"],
        "filter": {
            "status": 1
        }
    },
    "id": 1
}

Atbilde:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "ha_nodeid": "ckuo7i1nw000g0sajjsjre7e3",
            "address": "192.168.1.12",
            "port": "10051"
        },
        {
            "ha_nodeid": "ckuo7i1nv000c0sajz85xcrtt",
            "address": "192.168.1.8",
            "port": "10052"
        },
        {
            "ha_nodeid": "ckuo7i1nv000d0sajd95y1b6x",
            "address": "192.168.1.9",
            "port": "10053"
        }
    ],
    "id": 1
}

Iegūt gaidstāves mezglu skaitu

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "hanode.get",
    "params": {
        "countOutput": true,
        "filter": {
            "status": 0
        }
    },
    "id": 1
}

Atbilde:

{
    "jsonrpc": "2.0",
    "result": "3",
    "id": 1
}

Pārbaudīt mezglu statusu noteiktās IP adresēs

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "hanode.get",
    "params": {
        "output": ["name", "status"],
        "filter": {
            "address": ["192.168.1.7", "192.168.1.13"]
        }
    },
    "id": 1
}

Atbilde:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "name": "node3",
            "status": "0"
        },
        {
            "name": "node-active",
            "status": "3"
        }
    ],
    "id": 1
}

Avots

CHaNode::get() failā ui/include/classes/api/services/CHaNode.php.