Utils.GetServerInfo
class Utils.GetServerInfo
This class is responsible for retrieving key files from the doc. servers and placing them in the local directoryMethod Inventory
- ArchiveDirs()
- DeleteDirIfEmpty()
- GetAllDiskUseInfo()
- GetCentralFeedbackData()
- GetInstancesOnServer()
- GetLocalReportCopyDir()
- GetOneServerDiskUseInfo()
- GetOneServerTime()
- GetSFTPConnection()
- GetSSHConnection()
- GetServerReports()
- GetServerTimes()
- PromptForCredentials()
Parameters
parameter FILETOCHECK = /staging/learning/website/landing/index.html;
Methods
classmethod ArchiveDirs(verbose As %Boolean = 1)
look at what we have locally for each server
and ask whether to move anything that doesn't match instance inventory
classmethod DeleteDirIfEmpty(targetdir)
classmethod GetAllDiskUseInfo(username As %String = "", password As %String = "", verbose As %Boolean = 1) as %DynamicObject
Get disk use info for all servers, and return a json object (%DynamicObject) containing
serverName:diskUseInfoString pairs for all servers.
Sets ^SERVERDISKUSE("serverName") to the disk use string for that server, and
^SERVERDISKUSE("lastupdate") to the current date/time.
classmethod GetCentralFeedbackData(verbose As %Boolean = 1)
classmethod GetLocalReportCopyDir(server, instance, docbookj As %Boolean = 0)
classmethod GetOneServerDiskUseInfo(ssh As %Net.SSH.Session, servername As %String, verbose As %Integer = 1) as %String
Return the string result of df -h / (on irisdocs servers) or df -lh (on all other servers),
which will contain relevant disk use information.
Since Windows doesn't use df, this method doesn't currently work there, the return from a server running Windows would be something like:
"'df' is not recognized as an internal or external command, operable program or batch file."
If an error occurs during processing that prevents collection of the disk use info,
the text of that error is returned.
Sets ^SERVERDISKUSE("servername") to the disk use string for this server, and
^SERVERDISKUSE("lastupdate") to the current date/time.
classmethod GetOneServerTime(sftp As %Net.SSH.SFTP, servername As %String, verbose As %Integer = 1) as %Status
classmethod GetSFTPConnection(server As %String, ByRef sftp As %Net.SSH.SFTP, username As %String = "", password As %String = "", verbose As %Integer = 0) as %Status
Return SSH connection to the given server, using username and password args for authentication
classmethod GetSSHConnection(server As %String, ByRef ssh As %Net.SSH.Session, username As %String = "", password As %String = "", verbose As %Integer = 0) as %Status
Return SSH connection to the given server, using username and password args for authentication
classmethod GetServerReports(verbose As %Boolean = 1, whichFiles As %String = "all", whichServers As %String = "")
WhichFiles can be ALL, ALERTSLOG, ALGOLIA, DBMCOUNTS, ALLMINUSERRORS, ERRORS
classmethod GetServerTimes(username As %String = "", password As %String = "", verbose As %Boolean = 1)
classmethod PromptForCredentials()