@doug_sas That was indeed helpfull. OK, I think we are getting closer.
2020-03-02T13:51:55Z TRACE [00000015] sasinst - haManagerProcessService: name=sas_obj_spwn_utf8_ha_svc, numNeeded=3, numRunning=0 2020-03-02T13:51:55Z TRACE [00000015] sasinst - haManagerProcessService: host AAAAAAAAA is not FREE, it is INVALID 2020-03-02T13:51:55Z TRACE [00000015] sasinst - haManagerProcessService: host BBBBBBBBB is not FREE, it is INVALID 2020-03-02T13:51:55Z TRACE [00000015] sasinst - haManagerProcessService: host CCCCCCCCC is not FREE, it is INVALID 2020-03-02T13:51:55Z TRACE [00000015] sasinst - haManagerProcessService: no hosts available 2020-03-02T13:51:55Z TRACE [00000015] sasinst - haManagerProcessService: Exit 2020-03-02T13:51:55Z TRACE [00000015] sasinst - haManagerProcessServices: service sas_obj_spwn_utf8_ha_svc has 0 running, 0 launchErrors, 0 runErrors, state=ADDED
I think this explains a little bit more. Do you know why it is recognizing the hosts as "not FREE" and "INVALID"? Or how I can get more information about how SWO gets those messages?
This is where you need to send the entire log to tech support to get it analyzed.
Yes, that is done, although there is not really much more than that.
You may need to turn on the App.Grid.SGMG.Log.Master logger to trace to get the status of the hosts.
Hi @doug_sas ,
the hosts are OPEN-OK.
could you please explain the message "host is not FREE, it is INVALID", and the meaning of FREE/not FREE and INVALID? as they are, I think, undocumented.
Thank you in advance.
FREE means the host is available to be used for that service.
INVALID means that the service failed to start on that host so many times it has been taken out of consideration for running the service.
The real problem is that the service fails to run on the daemons. Hopefully the reason why will be in the daemon log files when you run with the App.Grid.SGMG.Logs.HA logger set to trace on the daemons.
Thanks so much, this helps me to better understand, certainly.
For me to feel sure, when you refer to make the changes on the daemons, and setting trace to daemons... what you mean is to not change this setting in the SWO GUI interface, but in the config/Lev1/Grid/logconfig.xml // config/Lev1/Grid/logconfig.trace.xml , and the daemon would be sgmg.sh?
Got you. Thanks, will do.
Hi @doug_sas , everyone,
an update and good news. I managed to get this working for one ObjectSpawner.
The issue in SWO was in a mistake/typo, hard to recognize, unless you set up the logs in the daemons as you mentioned.
User=>sasinst < haManagerInit: Cannot authenticate user.
As this is really hard to see in the SWO GUI, I updated through JSON, ensuring no funny characters are included, with Notepad++
In regards of the logs, I like a lot the fact that the strings are delimited.
@doug_sas In regards of the GUI, I would suggest an improvement: first, in the front-end, a neat js script check would help, and some further information ("ADDED" without error needs further description IMHO). In the back-end, a trim and a validation that the user can validate, would prevent a lot of headaches and troubleshooting in the future. In the logs, "Cannot authenticate user" should be an error, definitely, not INFO.
If you could pass this to the responsible team, that would be great. If you want, I could create an entry in the SASBallot ideas, here in the communities.
I will now implement the same for the rest of Object Spawners, and then for the WIP database and I will drop an update to keep the Knowledge Base.
For now, a summary:
nohup $command > $log_filename 2>&1 & # Modify to pick up the PID generated by ObjectSpawner.sh itself - Juan Sanchez #pid=$! #echo $pid > $pid_filename sleep 1 spwn_pid_filename=/sas_application/sasconfig/comp/config/Lev1/ObjectSpawnerUTF8/server.${thisHost}.pid spwn_pid=`cat $spwn_pid_filename` echo $spwn_pid > $pid_filename # echo "${now} ${script}: Service ${name} (pid $pid) is started" }
<logger name="App.Grid.SGMG.Log.HA" additivity="false"> <level value="trace"/> <appender-ref ref="LOG"/></logger>
Once all is done, rollback the changes and repeat if needed for further troubleshooting.
Best regards,
Juan
The SAS Users Group for Administrators (SUGA) is open to all SAS administrators and architects who install, update, manage or maintain a SAS deployment.
SAS technical trainer Erin Winters shows you how to explore assets, create new data discovery agents, schedule data discovery agents, and much more.
Find more tutorials on the SAS Users YouTube channel.