Resources
This content applies solely to Appian RPA, which must be purchased separately from the Appian base platform.

What is a resource?

A digital worker needs a workspace, just like a human worker does. The environment in which the digital worker completes the robotic process is known as a resource. A host machine can be a physical machine, such as a separate computer, or a virtual machine on a cloud server.

To start an execution, the resource needs certain data or information from the server. The resource communicates with the server through an agent, which is a program you'll install on the resource. Agents are required to be up and running for robotic processes to execute properly and communicate the results back to the console.

This page describes the Resources tab in the Appian RPA console, which you'll use to setup and monitor resources.

Add a resource

Required role: Administrator

Create a resource for each physical or virtual machine (VM) that will run robotic processes. Every resource has a corresponding agent, which can only be used on one machine.

Multiple resources can map to the same machine. For example, if you connect your personal computer to both your development and staging environments for testing purposes, you will create two resources.

Avoid trying to run multiple robotic processes on the same machine at the same time because they will likely conflict with each other.

When running your robotic processes in a production environment, we recommend using a dedicated machine, whether that be a provisioned virtual machine (VM) or physical machine, as the resource.

To add a resource:

  1. On the Resources tab, click the Add resource icon rpa-add-icon.png. The Resource definition editor page displays.
  2. Configure the following fields:
    • Name: Editable name for the resource that is shown throughout the console.
    • Operating system: Choose the resource's operating system: Windows, Linux, or Mac.
    • JRE path (%JAVA_HOME%): Optional field to specify where Java is installed on the resource.
    • Permissions: Assign or edit permissions for the resource. A resource must have permissions in common with any robotic process you want to use the resource. For more information, see Assign or edit permissions.
  3. Click Save. The Resource detail page for the new resource displays.
  4. Configure resource parameters.

To execute a robotic process on a new resource, remember to install the agent.

Be sure to add the resources to your Appian environment's firewall allow list, if applicable. The robotic process may not be able to execute successfully if the firewall blocks communication between the agent, resource, and server.

Using a virtual machine resource

You can use a VM as a resource to run robotic processes. By default, VMs may timeout and become unavailable after a period of inactivity. To ensure the resource remains available, you may want to complete additional configuration when creating a VM resource.

Microsoft Remote Desktop users can configure the following to prevent VM resources from timing out:

  • Configure Set time limit for disconnected sessions to Never. See Microsoft Help for instructions.
  • Keep Microsoft Remote Desktop running. If you need to end the session:
    1. Go to the resource window.
    2. Open the Start menu.
    3. Select Disconnect.

Additionally, ensure that the agent you have downloaded on the resource has administrator privileges to allow them to unblock sessions as needed.

View the list of resources

Required role: Any

The List of resources table contains all resources available to you based on your permissions. You can access the details of a resource by clicking on any of its columns.

rpa-resources.png

The resources are listed in alphabetical order in a grid with the following information:

  • Status: Blocked keys, Concurrence, Disabled, Locked session, Online, Offline, or Running Robot
  • Type: Production, Development, Development without restrictions or Remote development
  • Operating system: Windows, Linux or Mac
  • Robotic processes
  • Actions
  • Permissions

Types of resources

Type Icon Description
Production 951052.png A production resource has no restriction at all.
Development 951054.png A development resource is not permitted to execute robotic processes that take more than 2 hours.
Development without restrictions 951055.png In the same console there can be, at most, one resource of this type.
Remote development 951056.png A resource specifically configured to remote development, where the resource is the one connecting to the developer.
Windows resource 951057.png The agent is executed on a Windows operating system.
Linux resource 951058.png The agent is executed on a Linux operating system.
macOS resource 951059.png The agent is executed on a macOS operating system.

Available actions

You can perform several actions on resources in the list. Available actions depend on the resource's connectivity, whether the agent is started, and on whether its status is "Online" or "Offline."

Icon Description
951066.png Switches off a resource with connectivity and "Online" status.
951067.png Switches on a resource with connectivity and "Offline" status.
2229123.png Removes the session currently associated with the resource. Useful when we do know that the session doesn't exist anymore, but the console needs more time to be sure of that.
2229048.png Allows you to assign permissions to the resource.

Assign permissions to a resource

Required role: Developer or Administrator

RPA components rely on shared permissions for security. Users, robotic processes, and resources must have tags in common to see and interact with each other. To assign or edit permissions for a resource, see Assign or Edit Permissions.

Looking to edit permissions for multiple resources? Save time by modifying resource permissions in bulk.

View resource details

Required role: Any

Details include:

  • information related to the computer where the agent is running.
  • information related to the agent itself.

rpa-resource-detail.png

  • Last communication:
    • Agent: last time the agent connected with the console.
    • Console: last time the console connected with the agent.
  • Identifier: Unique identifier for the resource.
  • Version (revision): Version of the agent on the resource and the internal build number.
  • Name: Editable name of the resource that will be shown throughout the console instead of the identifier.
  • Agent with elevated privileges: When checked, the resource is running with administrator privileges.
  • Execute with block: When checked, the resource can execute robots in a blocked session unblocking it previously.
  • Screen saver: When checked, robotic processes can work with the screen saver enabled.
  • Screen blocked: When checked, the session is currently locked.
  • Input blocked: When checked, the keyboard and mouse input are locked for the user in the resource, but not for robotic processes. This is a security measure to avoid problems in machines not dedicated exclusively to robotic processes. You can also enable this option through the console or the SDK.
  • Blocked keys: When checked, an issue related to the keyboard is detected. For example, any key held down.
  • Local plugins: When checked, execution of local plugins is enabled. Plugins are fragments of code than can be executed without connection with the console (for instance, to use a VPN to gain access to the console itself).
  • Reserved memory: Reserved memory status of the JVM for the agent.
  • Generate event if % >: When checked, an event "resource_LIMIT_MEMORY" is generated when the memory percentage is over the maximum specified.
  • Screen resolution: Screen dimensions on the image representing your monitor.
  • Available disk space: Available disk space status on the computer.
  • Generate event if % <: When checked, an event "resource_LOW_FREE_HARD_DISK_SPACE" is generated when the free disk space percentage is under the minimum specified.
  • Java version: Java version used by the agent.
  • Processors: Number of available processors on the resource.
  • Operating System: Name and version of the operating system on the resource.
  • User session: Session identifier used by a resource with elevated privileges to unlock the session.
  • Current folder: Current folder where the agent is located.
  • Temporary folder: Temporary folder for the user who launched the agent.
  • IP addresses: IP addresses assigned to the resource (can be several due to the existence of different net interfaces).
  • Remarks: Additional information about the resource or the agent.

Actions available from the resource details

Depending on whether the resource has connectivity, and on whether its status is "Online" or "Offline", different icons will be available.

Icon Description
951068.png If the resource is offline and its license has not expired, you can download the agent to install it on your computer.
951070.png Launch the remote-control screen for a resource with connectivity. If the resource was disabled, it may look like it is "Offline" but even so you can access it remotely.
951071.png Disables the local plugins of the agent. It only works if the agent, in the moment of its creation, plugins was added in it and these are enabled.
951072.png Enables the local plugins of the agent. It only works if the agent, in the moment of its creation, plugins was added in it and these are disabled.
951073.png Lock the input from the keyboard and the mouse on a resource with connectivity. Only available if the agent is executed on the resource using an administrator profile.
951074.png Unlock the input from the keyboard and the mouse on a resource with connectivity. This action works only if the agent is executed on the resource using an administrator profile.
951075.png Send an agent for remote debugging. A new executable is downloaded on the resource, named jidoka-remote.exe, specifically designed for debugging robots remotely when you cannot debug them directly on the port involved.
951076.png Execute the agent for remote debugging.
951077.png Stop the agent from remotely debugging (only on the resource under remote debugging).
951078.png Executes the agent for remote debugging (JJDWP). This debugging is less common and requires its own execution setup. By clicking on this icon, a pop-up window will ask you for the IP, port and timeout for the connection.
951079.png Stops the agent from remotely debugging (JJDWP). Unlike the non-JJDWB version, this debugging must be stopped from the resource that launched it, and not from the resource being debugged.
951080.png Restart the agent, so that it can initiate itself and prevent, among other things, low memory problems in the computer where it is running, that is, the resource.
2229125.png Completely remove the resource from the console. This action cannot be undone and is only available for "ADMIN" profiles.

Container configuration

This feature has been deprecated and may be removed in a future release.

In the Container configuration section, you can configure two different types of containers for a resource: Docker and VirtualBox. Once the configuration is done, the console is able to integrate with the container to start and to stop it.

Docker

rpa-resources-docker.png

Additionally, it is possible to use Kubernetes as a Docker containers manager.

For Docker, you have to fill the following fields:

  • Host: The machine where the Docker service is installed.
  • Port: The port to connect to the host. The console uses an SSH connection.
  • Host user / password: The credentials to connect to the host machine.
  • Image name: Name of the Docker image to start.
  • Container name: Name of the container with the Docker image to start.
  • VNC external port: Optionally, if the image we prepared for a resource is Linux with VNC already configured, here you must indicate the port to access the machine using this protocol.
  • VNC password: Password for VNC.
  • Host data folder: The Docker image is started specifying that the agent is location on this path. This way, the agent, the cache, the workspace and logs will be persisted along the container executions.
  • Additional configuration: In case we want to specify something else about Docker.

Using these configurations, the console generates a Docker command to send to the machine to start or stop it.

VirtualBox

rpa-resources-vb.png

For VirtualBox, you have to fill the following fields:

  • Host: The machine where the VirtualBox service is installed.
  • Port: The port to connect to the host. The console uses an SSH connection.
  • Host user / password: The credentials to connect to the host machine.
  • VM name: Name of the virtual machine to handle which is configured in the VirtualBox service.
  • Additional configuration: In case we want to specify something else about VirtualBox.

Using these configurations, the console generates a VirtualBox command to send to the machine to start or to stop it.

Remote control viewer

Required role: Developer or Administrator

You can remotely visualize and operate the desktop on which the robot is running.

rpa-remote-control-viewer.png

To start monitoring, click on the Monitor icon (951090.png), which will show you a set of icons that allow you to perform certain actions on the desktop where the robot is executing.

Icon Description
951091.png Stop monitoring
951092.png Refresh screen
951093.png Take a screenshot
951094.png Full screen
951095.png Request the log file. It allows you to download the local error log.
951096.png Open the scripts editor Groovy. It allows you to execute Groovy code on the client.
951097.png Control remotely. It will show the position of the mouse pointer on screen, allowing you to click and drag elements on the desktop as usual. By enabling it, you will also see a text box where you can send text to the resource as well as the coordinates of the mouse pointer.
951099.png Restart services

It is important that you click on the Monitor icon again after you have finished monitoring the resource. This way the agent will consume fewer resources while there is no need for monitoring.

Restart a resource

When you restart services, a request is sent to the agent for it to try to restart the open connections with the console. This functionality should only be used under maintenance tasks of the agent, as it is more advisable to relaunch the agent from the console and manually restart the agent, in this order, when you detect any issue with its operation. You can also restart the resource automatically.

Automatic resource restart

The agent's requirements for RAM memory are low. However, depending on the version of the operating system, RAM available, the number of robots in execution, and maximum memory assigned to the agent, memory usage may increase too much. To avoid this situation, you can make a resource to restart automatically when a specified percentage of the total memory is exceeded.

For example, suppose you want to specify on a 2GB memory resource, that the agent should restart whenever the memory used by the agent exceeds 1.6 GB, that is, 80% of the total.

On the resource details, enter that percentage of memory not to be exceeded. This will trigger an event to restart the agent whenever it is exceeded. Events are explained in detail on the Monitoring page.

Disable resources on console restart

In the event the server goes down unexpectedly, administrators can configure Appian RPA to disable resources upon restart of the RPA server to ensure robotic processes will not run until an administrator has verified the resource is in a clean state.

To allow Appian to disable unclean resources on start up:

  1. Go to the Settings tab.
  2. In the Configuration tab, go to Security policies.
  3. Select Allow Appian to disable resources which are running robots during a console shutdown.
  4. Click Save security policies.
Open in Github Built: Mon, Dec 05, 2022 (08:15:43 PM)

On This Page

FEEDBACK