Documentation Index

Fetch the complete documentation index at: https://docs.lobstersoftware.com/llms.txt

Use this file to discover all available pages before exploring further.

System stop, load balancing, DMZ server, profile quickview (REST API)

Prev Next

All accesses are logged in the file ./logs/services/message.log. Alternatively, you can find the entry internal/message.log under Administration > Server logging. The password can be obfuscated (see Obfuscation).

The Response is a JSON document (with HTTP status 200). Following is an example of a response to a request with incorrect access data. The response is always structured this way. Only status (ok or failed) and reason have different values. In case of success, further information might be displayed.

{
    "response": {
        "reason": "permission denied (user=xxxx&passwd=xxxx)",
        "status": "failed"
    }
}
{
    "response": {
        "status": "failed",
        "reason": "unknown operation: use /dmz, /shutdown, /emergency, /quickview, /info or /loadbalance"
    }
}

Force stop

Besides the manual triggering of a "Force Stop" in the Control Center (see Integration settings) and the possibility of a "Force Stop" via file (see Configure shutdown behavior), you can also trigger a "Force Stop" over HTTP. See also the notes on crashed jobs (see System crash and crashed jobs).

Use the following URL (for example, controlled by Nagios).

http(s)://<your_server>/dw/rc/v1/shutdown

Maintenance stop

Besides the manual triggering of a "Maintenance Stop" in the Control Center (see notes there!), you can also trigger a "Maintenance Stop" over HTTP.

http(s)://<your_server>/dw/rc/v1/maintenance

Emergency halt

In addition to the manual triggering of an "Emergency Halt" in the Control Center (see notes there!) and the possibility of an Emergency Halt via the Admin Console, you can also trigger and end an "Emergency Halt" over HTTP.

Use the following URL (for example, controlled by Nagios).

http(s)://<your_server>/dw/rc/v1/emergency?mode=enable

NOTE:  Parameter mode=disable ends the "Emergency halt" mode.

DMZ

Set new DMZ server via HTTP

A new DMZ server can also be set with this servlet (formerly under Control Center > System > Integration settings, now: Administration > Base settings).

NOTE:  After a restart, the DMZ server set in configuration file ./etc/startup.xml will be used again.

The URL for this is the following.

http(s)://<your_server>/dw/rc/v1/dmz?target=<IP>:<port>

The port is the Message port of the DMZ server (default 8020).

Reset list of active DMZs

If you omit the parameter target or leave it empty, the system re-creates the list of active DMZ servers. This corresponds to the action DMZ reset (see Integration settings) in the Control Center.

NOTE:  This list is also empty after a restart. The system first automatically enters the DMZ server set in the configuration file ./etc/startup.xml.

This list only checks the number of DMZ servers allowed by the license. On a new request from a DMZ server, the system checks the list:

  • If the DMZ server is already in the list, the system allows the request.

  • If the maximum number is not yet reached, the system adds the DMZ server and allows the request.

  • If the maximum number is reached, the system rejects the request.

http(s)://<your_server>/dw/rc/v1/dmz

Load balancing

In this article, "Node" can mean either a Node Controller or a Working Node unless stated otherwise.

Send crashed and queued jobs to other node

You can send System crash and crashed jobs and Thread queues (GUI) jobs to another node in a load balancing system (usually under Administration > Base settings > System, DMZ, Loadbalancing).

http(s)://<your_server>/dw/rc/v1/loadbalance/crashedjobs?node=<node>

Enter the name of the Node (from the configuration file ./etc/factory.xml) in <node>, the node from which you want to take over the jobs.

And <your_server> is the address of the node that should take the jobs.

Display failover list

If you are using the load balancing Failover concept, you can use the following request to display a list of all known load balancing participants and their priority in case the current Node Controller fails and another participant has to take over this role. See Load balancing in the Control Center. The enablecheck parameter is optional and tries to reach the other servers in the network if set to true.

http(s)://<your_server>/dw/rc/v1/loadbalance/list?enablecheck=true

If you get the following response, you first have to activate the failover mechanism (see Failover concept).

{
    "response": {
        "status": "failed",
        "reason": "failover is not switched on"
    }
}

It should look something like this:

{
    "response": {
        "status": "ok",
        "reason": "list of nodes contains 5 hosts",
        "information": {
            "myState": "RUNNING",
            "controller": "41NC1",
            "details": null,
            "41NC1": {
                "externalURL": "https://www.google.de",
                "priority": "0"
            },
            "41WN1": {
                "externalURL": "https://www.google.de",
                "priority": "1"
            },
            "41WN4": {
                "externalURL": "https://www.google.de",
                "priority": "2"
            },
            "41WN3": {
                "externalURL": "https://www.google.de",
                "priority": "3"
            },
            "41WN2": {
                "externalURL": "https://www.google.de",
                "priority": "4"
            }
        }
    }
}

Manually switch Node Controller

The following request to the Node Controller (<your_server>) makes the node <node> the new Node Controller.

NOTE:  If the previous Node Controller was a Node Controller by license and configuration, it terminates and can only be restarted manually. If the previous Node Controller was a Working Node by license and configuration, then it automatically restarts as a Working Node.

http(s)://<your_server>/dw/rc/v1/loadbalance/toggle?node=<node>

The switch takes place during runtime. Example:  /dw/rc/v1/loadbalance/toggle?node=Node1...

Manually set the Node Controller

The following request informs the called Working Node (<your_server>) about the active Node Controller (<node>).

http(s)://<your_server>/dw/rc/v1/loadbalance/join?node=<node>

This is helpful if this Working Node was started after a change of the Node Controller and therefore still tries to find the old Node Controller. Example: .../dw/rc/v1/loadbalance/join?node=Node1...

Quickview for profiles

The following request shows the most important parameters of a profile (see Profiles) in a compact form.

http(s)://<your_server>/dw/rc/v1/quickview?profile=<profile name or profile ID>