Network Automation's AutoMate 6
AutoMate makes job scripting a breeze, and its scheduling and trigger tools are extensive and useful. Just don't look for multiple user support.
January 28, 2005
Getting the Job Out
AutoMate's central-management capabilities are primitive. Tasks reside on individual servers and are not stored centrally. From the administrative GUI, you can create tasks for each endpoint and set triggers to instigate each task. There are no templates for tasks, though you can duplicate an existing task. If you want to create a new task and run it on multiple endpoints, you must copy it to each endpoint. Fortunately, this is accomplished with a few mouse clicks, but a central repository of stored tasks would be more efficient. And though you can group tasks, you can't ask that all grouped tasks run together--they must be set to run individually.
Many job-scheduling programs use command-line-driven batch files. Conventionally, scripting and batch files have been the exclusive domain of command-line programs--no major desktop OS supports scripting for the graphical environment out of the box. This creates problems with Windows programs that require using the GUI, because they offer no command-line equivalent. This functionality is certainly not available for browser-based applications, which makes automating many administrative tasks difficult. AutoMate, however, lets you perform these scripting actions within the GUI.
Good • Supports Windows, Mac and Linux clients as well as multiple browsers• Lets users easily schedule meetings using the web interface or Outlook• Offers seamless support for meeting participants from outside the organizations • Supports clustering Bad• Supports real-time collaboration only• Includes limited real-time applicationsAutoMate 6, starts at $795 (Pro version) or $1,795 (Enterprise version). Available: March 15. Network Automation, (888) 786-4796, (213) 738-1700. www.networkautomation.com |
I wanted a script to automate adding host-name entries to our DNS appliance. I set it up so I could input the last octet of an IP address and a host name, and it would add the complete IP address and domain name to the DNS table. I was using one subnet, so the first three octets would always be the same.
I had the script ask the user for an IP and host name. The script then opened Internet Explorer, loaded the DNS administration Web site and logged in. It clicked on the "add host" button and entered the first three octets of my IP address in the appropriate field automatically. The script then entered the user- provided final IP octet and changed fields by simulating a mouse click in the host-name field. The user provided a host name, the domain was input, and the change was saved. Finally, the script clicked on the logout button and closed the session.
Step by StepAs with batch files, tasks are created through a series of linear steps, but the steps may contain loops and go to statements. Network Automation says you don't need to write any code to create jobs, but this is true only to a certain extent. Composing loops and using variables require knowledge in basic programming theory and concepts.
The task-creation interface has two parts: a list of available actions and a list of steps. The actions list is designed to make it as easy as 1-2-3 to write a script. I wanted to create a directory on the C: drive with the current day as its name--a useful task to run every morning before workers come in if they are to create daily work files.
AutoMate InterfaceClick to Enlarge |
Step 1: I chose the "create variable" command and named it curdate. Step 2: I inserted a format date action, changed the date format to year-month-day and stored this value in the curdate variable. There is no need to cast types in AutoMate, so I didn't have to specify if curdate was an integer, floating point number or string of text. Step 3: I executed the run command, cmd.exe /C mkdir c:%curdate%.
Script commands are viewed in an XML-like interface, but the presentation of the script is different. Customization options, like variable names and values, are set without using the action wizards. You also can embed Visual Basic scripts.Tasks can be created using arrays and if-then-else statements. Exceptions and errors can be logged to an e-mail address, log file or Windows event log or trigger another task. If a task ends in a failure or any step within a step fails, you define the corrective measures to take place, such as the initiation of another task. If a task fails, it appears in red in the management interface. Click down on the task to get information on the step that failed and why.
Unfortunately, you can't create dependencies before a task runs. For example, you can't check if a file is present or of a certain size, or if a task ended successfully.
Trigger Action
Although you can trigger all tasks manually, the real power of this product is in automatic triggers. You can set tasks to be triggered on certain days of the week, after an interval of time, upon start-up or when a user logs in. Other trigger options include when the endpoint is idle after a specified amount of time, when a system performance threshold is reached, at event log entry, at service starts or stops, at process initialization or termination, and when an SNMP trap is received.
For more granular control, you can set tasks to trigger when certain user and GUI activities take place. For example, you can specify tasks to occur when a window is opened, a key sequence or word is typed, or monitored files and directories are altered. You can even limit the key-sequence monitor to select applications. It's also possible to chain individual jobs together so that they all run sequentially if the previous one was ended successfully. However, you can't chain jobs across machines.A pop-up shows when a task is running. Users may click on this to stop tasks from running. I would have liked a way to make a task run silently or to prevent users from killing it. I also would like better support for multiple users. As it stands now, the system is mostly single-user-oriented both in administration and creation.
Michael J. DeMaria is an associate technology editor based at Network Computing's Syracuse University's Real-World Labs®. Write to him at [email protected].
You May Also Like