Link to home
Start Free TrialLog in
Avatar of Emmanuel Gleizer
Emmanuel GleizerFlag for Israel

asked on

Scheduled agent when server down

Hi all!

If a Domino server is down and there are missed scheduled agent(s), does the Domino Server run them when the server is started?
For exemple my agent run daily at 3:30 , but today the server was down at this time, the server has been re-started  at 4:04, I notice in my agent's log that it didn't run today.
Is there a special configuration that allow this?

thanks
ASKER CERTIFIED SOLUTION
Avatar of mbonaci
mbonaci
Flag of Croatia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Sjef Bosman
Good to know that my agents don't have that problem: I usually have only one, it runs every hour and does only what has to be done, so the once per day stuff is given a 2nd or even a 3rd chance.
Avatar of Emmanuel Gleizer

ASKER

Thanks for the workaround of saving the agent, the main problem is to remember that after downtime we should "Scan" All Dbs for scheduled Agents and run them manually.
Too bad that there isn't a sh sched missed.
sjef: Some of my agents import data from files, some connect by FTP to get update from 1/3 partner, some consolidate stats, some generate hugh reports, I can't shedule them every hours! Even if my case the  "quand c'est pas l'heure c'est plus l'heure" adage is wrong (I mean I can run them later).
Of course you can start agents every hour!
1. My agent starts, opens a profile document, checks what has to be done this time, runs the chores it has to do at that time, updates the profile document with the current date/time for this function, and ends.
2. I hope you know there are ways to start only a small agent and then you can load all other functions dynamically, in runtime.
If you're familiar with LotusScript, you can develop a new agent that will:

 - run on each of your servers
 - will be triggered by the server startup (trigger: "When server starts" - this option is available from v8, but can be set-up in earlier versions - see bellow)
 - cycle through all server's databases using NotesDbDirectory class
 - get all agents in each db using Agents property in NotesDatabase
 - narrow the agents set to only scheduled agents (Trigger and IsEnabled properties in NotesAgent)
 - check their schedule (using Lotus API code from open source project SuperNTF on OpenNTF.org)
 - compare the last run time against their schedule (LastRun property in NotesAgent)
 - run all of the agents that your code decide needs to run (RunOnServer method in NotesAgent)


How to trigger an agent on server startup before Domino Designer v8:
    http://www-01.ibm.com/support/docview.wss?uid=swg21231728

NotesDbDirectory class:
    http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.designer.domino.main.doc/H_NOTESDBDIRECTORY_CLASS.html

Agents property in NotesDatabase:
    http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.designer.domino.main.doc/H_AGENTS_PROPERTY.html

LastRun Property in NotesAgent:
    http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp?topic=/com.ibm.designer.domino.main.doc/H_LASTRUN_PROPERTY_AGENT.html

Trigger property in NotesAgent:
    http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.designer.domino.main.doc/H_TRIGGER_PROPERTY_9708_ABOUT.html

IsEnabled property in NotesAgent:
    http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.designer.domino.main.doc/H_ISENABLED_PROPERTY.html

SuperNTF:
    http://www.openntf.org/projects/pmt.nsf/ProjectLookup/SuperNTF

RunOnServer method in NotesAgent:
    http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.designer.domino.main.doc/H_RUNONSERVER_METHOD_5924_ABOUT.html
Good stuff, ha :)
wow! I totally zapped the "When server starts" trigger, thanks!
I love your skeleton! I'm not sure to persuade my boss to get the time to implement this, but I agree with you that we have "all what's needed" to re run automatically the missed scheduled agent!
GREAT POST mbonaci,
Emmanuel Gleizer