Senior 3 min · March 19, 2026

AutoSys Installation — AUTOSERV Environment Traps

AUTOSERV isn't set automatically—one .

N
Naren · Founder
Plain-English first. Then code. Then the interview question.
About
 ● Production Incident 🔎 Debug Guide
Quick Answer
  • AUTOSERV is the instance identifier — everything depends on it. Wrong AUTOSERV = wrong database = wrong jobs.
  • Port 7520 must be open between Event Processor and every agent. Closed port = jobs stay PENDING forever.
  • 8GB RAM minimum for small installs, 16GB+ for production. Underprovisioning causes event processor lag.
  • AUTOUSER ($AUTOUSER/out/event_demon.$AUTOSERV) is your first stop for debugging. Logs tell you everything.
  • Post-install test: chk_auto_up -A (processor running), autoflags -a (server reachable), test job end-to-end.
  • Silent killer: no dedicated service account. Mixing AutoSys with application accounts = permission hell.
Plain-English First

Installing AutoSys is like setting up a new restaurant. You need the kitchen (server with database), hire a head chef (Event Processor), set up workstations in each room (Remote Agents), and give everyone the same house rulebook (environment variables and config files) so they all understand each other.

Your infrastructure team handles the AutoSys install. You just use it. That's the theory.

Reality: you'll SSH into the AutoSys server at 2 AM to debug why a job isn't running. And if you don't know where the logs live or which AUTOSERV you're in, you'll waste 30 minutes figuring out the basics.

This guide assumes the install is done. We focus on the 5 checks that verify it's working — and the environment variables you'll type every single day.

Prerequisites before installation

On the AutoSys server: - A supported OS (RHEL/CentOS Linux, or Windows Server) - A supported database (historically Sybase ASE, now Oracle or other RDBMS) - Java runtime (AutoSys WCC runs on Tomcat) - Sufficient RAM — at least 8GB for a small installation, 16GB+ for production - A dedicated service account (commonly named autosys or appuser)

On each agent machine: - A supported OS (Linux, Windows, AIX, Solaris) - The AutoSys Agent package (lightweight, minimal footprint) - Network connectivity to the AutoSys server on the configured port

Port planning matters. The Event Processor communicates with agents over specific ports (default 7520). Make sure firewalls are open between the AutoSys server and every agent machine.

The silent killer: Using a shared account for multiple environments. If the same OS account connects to DEV and PRD, you will eventually run a command against the wrong instance.

pre_install_checks.shBASH
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# Check Java version (required for WCC)
java -version

# Check available memory
free -h

# Check disk space on AutoSys installation paths
df -h /opt/CA /opt/autosys /u01

# Verify network connectivity to agent machines
autoping -m agent-machine-01

# Check AutoSys port is open between server and agent
nc -zv agent-machine-01 7520

# Verify separate service accounts (critical)
whoami
# Should be autosys_dev, autosys_qat, or autosys_prd — never 'autosys' shared
Output
openjdk version "11.0.21" 2023-10-17
Total: 31Gi Used: 8.2Gi Free: 23Gi
Filesystem Size Used Avail Use%
/opt/CA 50G 12G 38G 24%
Connection to agent-machine-01 7520 port [tcp] succeeded!
Current user: autosys_dev
The Restaurant Model
  • Event Server = kitchen inventory system (database)
  • Event Processor = head chef (reads orders, dispatches cooks)
  • Remote Agent = wait station (each room has one)
  • AUTOSERV = restaurant name — orders don't cross between restaurants
  • Port 7520 = the pathway between kitchen and wait stations
Production Insight
A team provisioned a new AutoSys server with 4GB RAM. The install completed. chk_auto_up showed RUNNING. Then they loaded 500 jobs. The Event Processor started logging memory errors. Jobs queued but didn't start. Condition evaluations took 30 seconds.
Root cause: The Event Processor caches job definitions and event history. With 500 jobs, memory usage exceeded 4GB. The OS started swapping. Performance collapsed.
Fix: Increased to 16GB. No more issues.
Diagnosis: Check event_demon log for 'OutOfMemoryError' or 'cannot allocate memory'. Autorep -q on large jobs should complete in <1 second.
Rule: 8GB minimum for small installs (<100 jobs). 16GB+ for production. RAM is cheap. Underprovisioning causes outages.
Key Takeaway
8GB RAM minimum, 16GB+ for production. Underprovisioning kills performance.
Port 7520 open between server and all agents. Closed port = pending jobs permanently.
Dedicated service account per environment. Shared accounts cause cross-instance mistakes.
Verify all prerequisites BEFORE calling Broadcom support.
Pre-install decision guide
IfFewer than 100 jobs, non-critical
Use8GB RAM, single server, no HA. Simple and cheap.
If100-500 jobs, production critical
Use16GB RAM, dedicated database server, agent redundancy.
If500+ jobs or financial/regulated workloads
Use32GB+ RAM, dual Event Server HA, load-balanced agents.
IfMultiple environments (DEV/QAT/PRD)
UseSeparate OS service accounts per environment. No shared accounts.
AutoSys Installation Flow AutoSys Installation Flow. Pre-install through verification · Check prerequisites · OS, Java, RAM, DB, service account · Install Event Server · Database instance (Sybase / Oracle) THECODEFORGE.IOAutoSys Installation FlowPre-install through verification1 Check prerequisitesOS, Java, RAM, DB, service account2 Install Event ServerDatabase instance (Sybase / Oracle)3 Install Event ProcessorScheduling daemon on server4 Install Remote AgentsLightweight agent on each target machine5 Open port 7520Firewall rule between server and agents6 Verify with chk_auto_up + test jobConfirm end-to-end executionTHECODEFORGE.IO
thecodeforge.io
AutoSys Installation Flow
Autosys Installation Setup

Key environment variables you'll use every day

AutoSys uses several environment variables that control which instance you're talking to and where log files live. These are set in your shell profile (.bash_profile or .profile) for the AutoSys service account.

Knowing these by heart makes you much faster at debugging. When something goes wrong at 3 AM and you're SSH'd into the AutoSys server, these are the first things you check.

Most critical: AUTOSERV. It tells AutoSys which instance to connect to. Set it wrong, and you'll submit jobs to the wrong environment. No warning. No error. Just silent wrongness.

The 3 AM trick: If a job isn't behaving, echo $AUTOSERV and autoflags -a. If they don't match your expectation, fix the environment before touching anything else.

autosys_env.shBASH
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# The AutoSys instance name — critical, everything uses this
export AUTOSERV=ACE

# AutoSys installation directory
export AUTOSYS=/opt/CA/WorkloadAutomationAE

# AutoSys user/data directory (logs, config files, PID files)
export AUTOUSER=/opt/CA/WorkloadAutomationAE/autouser

# Path to AutoSys binaries (needed for jil, autorep, sendevent etc.)
export PATH=$AUTOSYS/bin:$PATH

# The "3 AM sanity check": put AUTOSERV in your prompt
export PS1='[\u@\h:$AUTOSERV \W]\$ '

# Add the above to your .bash_profile for the autosys service account:
# source this file or add these lines to ~/.bash_profile

# Verify the environment is set correctly:
echo "Instance: $AUTOSERV"
echo "Install dir: $AUTOSYS"
echo "User dir: $AUTOUSER"
autoflags -a
Output
[autosys@server:ACE ~]$
Instance: ACE
Install dir: /opt/CA/WorkloadAutomationAE
User dir: /opt/CA/WorkloadAutomationAE/autouser
AutoSys r12.0 Build 213 — Event Processor: RUNNING
Multiple AutoSys instances on one server
Large enterprises sometimes run multiple AutoSys instances on the same server — for example, DEV, QAT, and PRD. Each instance has its own AUTOSERV value. When switching between instances, always verify your AUTOSERV variable first or you'll accidentally submit jobs to the wrong environment. Put AUTOSERV in your prompt. You'll never be confused again.
Production Insight
A senior engineer spent 45 minutes debugging why a job wasn't running. They checked logs, verified the agent, restarted the Event Processor. Nothing worked.
The problem: AUTOSERV was set to DEV. They were looking at the PRD instance. The job was in DEV, not PRD. The entire investigation was against the wrong database.
Fix: The team added autoflags -a to the beginning of every runbook. First command, every time.
Diagnosis: autoflags -a shows the instance name and connection status. Always run it before assuming where you are.
Rule: First command after SSH: autoflags -a. Check AUTOSERV. Every. Single. Time.
Key Takeaway
AUTOSERV determines which instance you're connected to. Wrong AUTOSERV = wrong database.
Put AUTOSERV in your shell prompt: export PS1='[$AUTOSERV] \u@\h\$ '
$AUTOUSER/out/event_demon.$AUTOSERV — logs include instance name. Always grep for it.
First command after SSH: autoflags -a. Verify before any destructive operation.

Verifying a fresh installation

After installation, run through this checklist before declaring the system ready:

  1. Event Processor is runningchk_auto_up -A
  2. Can connect to Event Serverautoflags -a
  3. Agents are registered and activeautorep -M %
  4. Can define a test job — create a simple JIL job
  5. WCC web interface is reachable — open the browser URL
  6. Test job runs successfully end-to-end

Test job best practice: Use a job that does something harmless but observable. Write to a test log file. Run it manually first on the agent machine to verify the command works. Then let AutoSys run it.

The rookie mistake: Assuming the test job works because the JIL insert succeeded. A successful insert only means the syntax was correct. It doesn't mean the command will run successfully on the agent.

verify_install.shBASH
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# 1. Check Event Processor
chk_auto_up -A

# 2. Check overall system
autoflags -a

# 3. List all registered machines
autorep -M %

# 4. Insert and immediately force-run a test job
jil << 'JIL'
insert_job: INSTALL_TEST
job_type: CMD
command: echo 'AutoSys installation verified successfully' >> /tmp/autosys_test.log
machine: autosys-server
owner: autosys
date_conditions: 0
JIL

# Force start it
sendevent -E FORCE_STARTJOB -J INSTALL_TEST

# Wait a few seconds, then check its status
autorep -J INSTALL_TEST

# Check the test log
cat /tmp/autosys_test.log

# Verify the test job runs on the correct machine
# The machine attribute must match the agent hostname

# Clean up
echo 'delete_job: INSTALL_TEST' | jil
Output
Event Processor: RUNNING
MACHINE NAME STATUS MAX LOAD
autosys-server ACTIVE 100
agent-machine-01 ACTIVE 100
agent-machine-02 ACTIVE 100
Job Name Last Start Status
INSTALL_TEST 03/19/2026 14:22:01 SU
/tmp/autosys_test.log:
AutoSys installation verified successfully
The test job proves the full stack
A test job that runs 'echo' on the local server proves: Event Processor is running, job definition is stored, agent communication works, job execution works, output is written. That's everything you need for a basic install verification.
Production Insight
A team proudly declared their AutoSys install 'verified' after chk_auto_up passed. A week later, their first real job stayed PENDING. No logs. No errors.
The problem: The test job ran on the local server (autosys-server). The real job needed to run on a remote agent. No one had tested remote agent connectivity.
The agent machine had a firewall blocking port 7520. The test never caught it.
Fix: Run the test job on each agent machine, not just the server.
Diagnosis: autoping -m remote-agent shows active/inactive. If inactive, test port: telnet remote-agent 7520.
Rule: Verify connectivity to EVERY agent machine before declaring the install complete. One test job on the server proves nothing about remote agents.
Key Takeaway
chk_auto_up -A confirms processor is running.
autoflags -a confirms Event Server connectivity.
autorep -M % shows all registered agents — check each one.
Test job on the server proves local execution. Test job on each agent proves remote.
Clean up test jobs after verification — delete_job leaves no trace.
● Production incidentPOST-MORTEMseverity: high

The Wrong AUTOSERV That Deployed to Production

Symptom
JIL commands run without error. autorep shows job definitions. Everything looks normal. Except you're looking at the wrong instance. Changes apply to an environment you didn't intend to touch.
Assumption
The engineer assumed their shell environment inherited the correct AUTOSERV from system defaults. It didn't. It inherited from a stale profile that set AUTOSERV=PRD from a previous session.
Root cause
AUTOSERV is not set automatically. It must be explicitly set in your shell profile or manually before running commands. The engineer's .bash_profile had AUTOSERV=PRD. They logged in, sourced it, and started working on 'DEV' — but AUTOSERV was still PRD. All AutoSys commands read AUTOSERV. No command warns you which instance you're connected to. There's no 'are you sure you want to delete jobs in PRODUCTION?' prompt.
Fix
1. Always display AUTOSERV in your prompt: export PS1='\u@\h:\$AUTOSERV \w\$ ' 2. Make the first line of every automation script check and echo AUTOSERV 3. Use separate service accounts for each environment (autosys_dev, autosys_prd) — no shared accounts 4. After installation, run autoflags -a first thing. It shows the instance name. Verify before any destructive JIL operation.
Key lesson
  • AUTOSERV determines your instance. There's no safety net.
  • Always verify autoflags -a before running JIL deletions or updates.
  • Put AUTOSERV in your command prompt. Always visible, never forgotten.
  • Separate OS accounts for DEV, QAT, PRD — the cheapest insurance.
Production debug guideThe 5 things to check when a fresh install doesn't behave4 entries
Symptom · 01
chk_auto_up -A returns 'Event Processor not running'
Fix
Check event_demon log: tail -100 $AUTOUSER/out/event_demon.$AUTOSERV. Look for database connection errors or lock file conflicts. Start processor: eventor
Symptom · 02
autoflags -a works, but jobs never run (stay PENDING/RUNNING forever)
Fix
Check agent communication: autoping -M %. If agents show INACTIVE, port 7520 may be blocked. Verify firewall between AutoSys server and agent machines.
Symptom · 03
autorep shows no jobs even though JIL inserts succeeded
Fix
Check AUTOSERV environment variable. You're probably connected to a different instance (e.g., inserted into DEV, checking in PRD).
Symptom · 04
sendevent commands work on some jobs but not others
Fix
Check if jobs are on HOLD or ICE. autorep -J JOB -q. Also verify AUTOSERV matches the instance where jobs were defined.
★ Install Verification — 60-Second ChecklistRun these commands after any install or when you suspect environment issues
Verify instance and AUTOSERV
Immediate action
Run autoflags to confirm environment
Commands
echo $AUTOSERV
autoflags -a
Fix now
export AUTOSERV=PROPER_VALUE, then verify again
Event Processor not running+
Immediate action
Start it and check logs
Commands
chk_auto_up -A
tail -50 $AUTOUSER/out/event_demon.$AUTOSERV
Fix now
eventor
Agents not responding+
Immediate action
Test connectivity and port
Commands
autoping -m AGENT_HOST
telnet AGENT_HOST 7520
Fix now
Open firewall port 7520, restart agent
No jobs visible+
Immediate action
Check instance — likely wrong AUTOSERV
Commands
autoflags -a | grep Instance
echo $AUTOSERV
Fix now
export AUTOSERV=CORRECT_INSTANCE
AutoSys Environment Variables — At a Glance
Environment VariableWhat it controlsExample valueWhat breaks if wrong
AUTOSERVAutoSys instance name (connects to correct database)ACE, PRD, DEVWrong instance → wrong jobs. No error. Silent failure.
AUTOSYSInstallation directory path/opt/CA/WorkloadAutomationAECommands fail with 'command not found'
AUTOUSERUser data and log directory/opt/CA/WorkloadAutomationAE/autouserLogs go to wrong place; event_demon can't write
PATHMust include AutoSys bin directory$AUTOSYS/bin:$PATHsendevent, autorep, jil not found

Key takeaways

1
AUTOSERV is the most important environment variable
wrong value = wrong instance. No error. No warning.
2
Put AUTOSERV in your shell prompt. Always visible. Never forgotten.
3
Port 7520 must be open between Event Processor and every agent. Closed port = jobs stay PENDING.
4
Test job on local server proves nothing about remote agents. Test EACH agent machine.
5
8GB RAM minimum, 16GB+ for production. Underprovisioning causes silent performance collapse.
6
First command after SSH
autoflags -a. Verify BEFORE any destructive operation.

Common mistakes to avoid

5 patterns
×

Not verifying AUTOSERV before running commands

Symptom
Engineer deletes jobs from PRD while thinking they're in DEV. No error messages. No 'are you sure' prompt. Recovery takes hours.
Fix
export PS1='\u@\h:$AUTOSERV \w\$ ' — display instance in prompt. Run autoflags -a before every destructive session.
×

Installing agents without opening firewall port 7520

Symptom
Agent shows INACTIVE in autorep -M %. Jobs assigned to that agent stay PENDING forever. No error in job logs — the Event Processor can't contact the agent at all.
Fix
Verify port connectivity: telnet agent-host 7520. Open firewall between Event Processor and every agent. Test with autoping -m after fix.
×

Not creating dedicated service accounts per environment

Symptom
Same OS account (autosys) connects to DEV and PRD. Engineer sources a profile with AUTOSERV=PRD, thinks they're in DEV, runs destructive JIL against production.
Fix
Create separate OS accounts: autosys_dev, autosys_qat, autosys_prd. Each account has its own .bash_profile with the correct AUTOSERV. No shared accounts.
×

Forgetting to clean up test jobs

Symptom
Months later, autorep shows dozens of test jobs (INSTALL_TEST, TEST_JOB, TEMP_JOB). No one knows which are safe to delete. The environment is cluttered.
Fix
After verification: echo 'delete_job: INSTALL_TEST' | jil. Add test job cleanup to your install checklist.
×

Assuming chk_auto_up passing means agents are reachable

Symptom
Install verified on server. First real job on remote agent fails. chk_auto_up still says RUNNING. The Event Processor is fine — the agent network path isn't.
Fix
Test EACH agent machine individually: autoping -m remote-agent. If fails, check port 7520 and agent service on remote host.
INTERVIEW PREP · PRACTICE MODE

Interview Questions on This Topic

Q01JUNIOR
What environment variables does AutoSys use and what does each control?
Q02JUNIOR
What is the AUTOSERV variable in AutoSys?
Q03JUNIOR
What port does the AutoSys Event Processor use to communicate with agent...
Q04SENIOR
How do you verify an AutoSys installation is working correctly?
Q05SENIOR
What would you check first if AutoSys was freshly installed but jobs are...
Q06SENIOR
How do you safely manage multiple AutoSys instances (DEV, QAT, PRD) on t...
Q01 of 06JUNIOR

What environment variables does AutoSys use and what does each control?

ANSWER
Three primary environment variables: - AUTOSERV: The instance name (e.g., ACE, PRD, DEV). Determines which database the commands connect to. This is the most critical — wrong value affects everything. - AUTOSYS: Installation directory path (e.g., /opt/CA/WorkloadAutomationAE). Binaries like sendevent, autorep, jil live in $AUTOSYS/bin. - AUTOUSER: User data and log directory. Event processor logs are at $AUTOUSER/out/event_demon.$AUTOSERV. Also ensure PATH includes $AUTOSYS/bin. Without it, AutoSys commands won't be found. Best practice: Set these in the AutoSys service account's .bash_profile and display AUTOSERV in the shell prompt to avoid instance confusion.
FAQ · 6 QUESTIONS

Frequently Asked Questions

01
What is AUTOSERV in AutoSys?
02
What port does AutoSys use?
03
How do I check if AutoSys is running?
04
Can AutoSys run on Linux?
05
How many AutoSys instances can run on one server?
06
What's the first thing I should do after SSH'ing into an AutoSys server?
COMPLETE GUIDE
The Complete AutoSys Workload Automation Guide for Engineers →

JIL syntax, sendevent, autorep, box jobs, file watchers, scheduling, HA, security, cloud workload automation, and 22 interview questions — the definitive AutoSys reference for production engineers.

🔥

That's AutoSys. Mark it forged?

3 min read · try the examples if you haven't

Previous
AutoSys Event Server and Event Processor
4 / 30 · AutoSys
Next
AutoSys vs Cron vs Control-M