Autor Thema: "show stat" ohne Konsolen-Output  (Gelesen 3513 mal)

Offline Skalden

  • Frischling
  • *
  • Beiträge: 22
  • Geschlecht: Männlich
"show stat" ohne Konsolen-Output
« am: 06.09.12 - 14:08:13 »
Hallo Notes-Gemeinde,

Ich stehe vor einem Problem. Ich die Daten aus dem "show stat"-Befehl haben, ohne dabei die Konsole der Server zuzumüllen, die ich antrigger. Nur leider habe ich nichts in Java, LotusScript oder C++ gefunden, was mir dabei weiterhilft. Gibt es evtl. eine Datenbank die sich regelmäßig (am besten einstellbar), die so etwas von IBM schon mitbringt oder gibt es irgend eine Klasse in Java, die ich übersehen habe? Vielleicht auch nen Kniff in LotusScript, womit sich das Problem umgehen lässt?

Beste Grüße
Skalden

Offline mholup

  • Frischling
  • *
  • Beiträge: 17
Re: "show stat" ohne Konsolen-Output
« Antwort #1 am: 06.09.12 - 14:36:27 »
Hallo,

es gibt NSFGetServerStats in C++ der nichts in die Konsole schreibt in etwa so

Code
error = NSFGetServerStats(temp.GetTextPtr(), NULL, NULL, &hTable, &TableSize);
			if (!error )
			{
				//ParseStats(temp.GetTextPtr(), hTable, TableSize);
				if (hTable == NULLHANDLE)
				  {
					 printf("Server '%s' has no Serverstats.\n",  temp);
					 printf("Server '%s' is not ok.\n", temp);
					 return(ERROR);
				  }
				else
				  {
					 char *p,*pBuffer,*pValue; 
					 char NumberValue[MAXSPRINTF];
					 char Buffer[MAXUSERNAME] = "";
					 WORD BufferLength;
					 DWORD i1 = 0,x2 = 0;
					 WORD NumListEntries;
					 char Output[MAXSPRINTF];	
					 bool MemFirst=false;
					 writing = true;	
					 p = (char far *)OSLockObject(hTable);
					 //NumListEntries = ListGetNumEntries(lpList, FALSE);
					 while (!p==NULL)
					 {
						//cout.write(p,100);
						pValue = strchr(p, CHAR_TAB);
						if (pValue == NULL)
						 break;
						i1 = (WORD) (pValue-1 - p + 1);
						//Buffer clear
						memset(Buffer,' ',strlen(Buffer));
						//Copy from p in the length i1 to Buffer
						memcpy(Buffer,p,i1);
						//strcat(Buffer, "\0");
						/*cout <<"\n" << Buffer;
						cout.write(p, 100);
						cout.write(pValue, 100);
						cout << "\n" << p;
						cout <<"\n" << pValue;*/
			            
						pValue++;
						//laenge += (WORD) (pValue - p + 1);
						TableSize -= (WORD) (pValue - p + 1);
						p = strchr(pValue, CHAR_LF);
						if (p == NULL)
							break;
						/* Parse the value to store in array */
						BufferLength = (WORD) (p - pValue);
						p++;
						//laenge += BufferLength+1;
						TableSize -= BufferLength+1;
						if (strncmp(Buffer,"Agent.",6)==0)

Grüße Max

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: "show stat" ohne Konsolen-Output
« Antwort #2 am: 06.09.12 - 14:45:47 »
Du kannst den Console Output unterdrücken, wenn du vor den befehl ein ! (Ausrufezeichen) schreibst. Also !Show Stat. Wenn du das in deiner LS Routine als parameter an die aufrufende funktion übergibst, wird nur der Befehl selbst an der Console angezeigt, nicht aber der Output. Den erhälst du als Rückgabe der Funktion.
Domino Configuration Tuner macht es genau so.
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Skalden

  • Frischling
  • *
  • Beiträge: 22
  • Geschlecht: Männlich
Re: "show stat" ohne Konsolen-Output
« Antwort #3 am: 06.09.12 - 14:51:41 »
Der Tipp mit dem Ausrufezeichen ist grandios! Den kann ich so in meine bestehende Lösung einbauen! Vielen Dank!

Offline mholup

  • Frischling
  • *
  • Beiträge: 17
Re: "show stat" ohne Konsolen-Output
« Antwort #4 am: 07.09.12 - 08:50:15 »
Du kannst den Console Output unterdrücken, wenn du vor den befehl ein ! (Ausrufezeichen) schreibst. Also !Show Stat. Wenn du das in deiner LS Routine als parameter an die aufrufende funktion übergibst, wird nur der Befehl selbst an der Console angezeigt, nicht aber der Output. Den erhälst du als Rückgabe der Funktion.
Domino Configuration Tuner macht es genau so.

Hallo,
Habs mal probiert und hat natürlich nicht funktioniert, Ausgabe kam trotzdem am Server Monitor und Log an. Die Frage ist jetzt liegts an irgendeinem Ini Parameter?

Groß Max

Offline Skalden

  • Frischling
  • *
  • Beiträge: 22
  • Geschlecht: Männlich
Re: "show stat" ohne Konsolen-Output
« Antwort #5 am: 10.09.12 - 16:16:25 »
Ich kann nur für unsere Umgebung sprechen:
Ich habe nen Java-Agent geschrieben in dem irgendwo eine solche lustige Zeile auftritt:
Code
serverAnswer = session.sendConsoleCommand(Server, "!sho stat " + statistic[k]);
Die Variable serverAnswer ist nen String. Ich habs im Log mal verfolgt, er müllt ihn mir nicht zu, sondern zeigt nur, das der Command "!sho stat" durch den Executive User ausgelöst wurde, aber nicht den vollständigen Log hintendran. Also genau das, was ich wollte.

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: "show stat" ohne Konsolen-Output
« Antwort #6 am: 11.09.12 - 06:36:01 »
exactly, genau so funktioniert es.
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz