Autor Thema: Agent Log: Auslesen & Löschen  (Gelesen 5007 mal)

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Agent Log: Auslesen & Löschen
« am: 24.01.05 - 17:58:14 »
Hi,

wenn man im Designer einen Agenten in der View rechts anklickt und auf "Log..." klickt, bekommt man die AgentLog zu sehen.
Nun bräuchte ich
a) Lesezugriff auf den Inhalt (nicht ganz so wichtig)
b) eine Möglichkeit, den Inhalt zu löschen

Plain LotusScript fällt da wohl aus. Die Log ist soweit ich gesehen habe auch nicht in einem Item hinterlegt.
Also: NotesAPI. Hat da wer von Euch schon mal gemacht und kann mir hier Tipps geben?

Alternativ habe ich überlegt, den Agenten in DXL in einen Stream zu Exportieren, Log auslesen, rauswerfen und den Agenten wieder zu importieren. Ich traue aber DXL auch nicht 100% über'n Weg, mir sind da schon mal beim Export und Import Bugs aufgefallen (also dass Inhalte nicht wieder 100% übernommen werden).

Danke schon im Voraus

Matthias
« Letzte Änderung: 25.01.05 - 21:44:51 von TMC »
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline -Michael-

  • Aktives Mitglied
  • ***
  • Beiträge: 153
  • Geschlecht: Männlich
    • Software Guide
Re: Agent Log: Auslesen & Löschen
« Antwort #1 am: 24.01.05 - 19:57:32 »
Hi Matthias,

das würde mich auch interessieren :-)
Ich habe in meiner "Yet another Doc Library" Agenten, die über Aktionsbuttons aufgerufen werden. Wenn ich die DB ausliefere, dann sollten dort auch keine Einträge sein. Ein Kopieren der DB zieht das ganze mit.

Ich hatte mir vor einem guten Monat das Buch ls2capi von Normunds gegönnt (http://ls2capi.com), dabei bin ich auf eine weitere Eigenart gestoßen, die mir bisher nie bekannt war:

Zitat
As it turns out each agent has a related data document you can use to save your data between runs. Each time we edit an agent, the old document gets discarded and new one associated. Up to very recent releases the discarded data documents became “orphaned” data notes. This behaviour changes as IBM developers try to fix these problems as they become apparent, but even in Notes Domino 6 there still exist some ways to create orphaned Agent Data notes. Does it ring the bell now: how many times do you think you have edited the agents in the database you are currently working on?

Normunds bietet auch hier eine entsprechende Lösung an (Script verfügbar, wenn man sein Buch gekauft hat).

Bezüglich Deiner Frage hatte ich auch schon mal im LDD gestöbert, aber keine Lösung gefunden.

Vielleicht sollte man mal in Normunds Forum fragen? Ich kann das gerne machen, nachdem ich durch den Buchkauf dort einen Account habe.
Würde mich echt interessieren. Mit der API-Doku bin ich da auch nicht weitergekommen.

Michael

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re: Agent Log: Auslesen & Löschen
« Antwort #2 am: 24.01.05 - 20:10:40 »
Vielen dank, Michael, für die Infos.

Vielleicht sollte man mal in Normunds Forum fragen? Ich kann das gerne machen, nachdem ich durch den Buchkauf dort einen Account habe.

Bitte, gerne, danke  :D

Bei uns hat sich das ergeben, weil wir Datenbanken an eine Partnerfirma weitergeben. Und da soll möglichst alles unnötige aus einer DB verschwinden. Da klingt auch Dein Zitat sehr interessant bezügl. "orphaned data notes".
Was ich noch mache, dass ich die $UpdatedBy der DesignNotes zurücksetze.
Weiter muss man ja auch die DB's mit dem Hex-Editor ansehen  >:( (http://www.atnotes.de/index.php?topic=20219.0)

Ist jetzt eine meiner letzten Aufgaben die noch in den To Do's steht, bevor ich im April bei einer neuen Fa. anfange....
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline -Michael-

  • Aktives Mitglied
  • ***
  • Beiträge: 153
  • Geschlecht: Männlich
    • Software Guide
Re: Agent Log: Auslesen & Löschen
« Antwort #3 am: 24.01.05 - 21:21:53 »
OK, ich habs mal in Normunds Forum gepostet.

Michael

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re: Agent Log: Auslesen & Löschen
« Antwort #4 am: 24.01.05 - 21:35:31 »
Danke  :)
Bin sehr gespannt was dabei rauskommt.
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline -Michael-

  • Aktives Mitglied
  • ***
  • Beiträge: 153
  • Geschlecht: Männlich
    • Software Guide
Re: Agent Log: Auslesen & Löschen
« Antwort #5 am: 25.01.05 - 20:15:36 »
OK, Normunds hat geantwortet, aber das bringt uns leider nicht wirklich weiter.

Lösung fürs Löschen:
Ich hab mal mit NotesPeek reingesehen, man kann das so machen:
 - $AssistRunInfo löschen (dort steckt die Information)
 - danach Agent neu speichern (damit wird das Item wieder frisch erstellt):
Code
	Dim vAgentArray As Variant
	vAgentArray = db.agents
	If Isempty (vAgentArray) Then
		Msgbox "The database does not contain any agents.", 64, "Operation canceled"
		Exit Sub
	End If
	
	Forall a In vAgentArray
		a.ServerName = a.ServerName
		Call a.save()
	End Forall

Ich hab jetzt allerdings noch nicht evaluiert, ob das sonstige Probleme verursacht.


Um das Log lediglich anzuzeigen, muss man nach Japan  ;D

http://nmag.softbankpub.co.jp/home.nsf/content/ndmr200304api35-1?OpenDocument

Nicht verwirren lassen (ich habe da nur Fragezeichen im Browser wohl aufgrund nicht installierter Fonts), da gibts ganz unten die Sample35.nsf, die zeigt, wie man die Log ausliest.

Da ich nicht wirklich weiß, was das für eine Seite ist, und wie lange die nsf dort noch verfügbar ist, hab ich sie mal unten drangehängt.

Michael
« Letzte Änderung: 25.01.05 - 20:17:53 von -Michael- »

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re: Agent Log: Auslesen & Löschen
« Antwort #6 am: 25.01.05 - 21:44:30 »
Vielen dank, Michael.

Das mit dem Löschen hilft schon mal sehr viel weiter, denke ich.
Und nachdem Du auch berücksichtigt hast, das gelöschte Item wiederzubeleben, sollte das eigentlich keine Probleme ergeben. Ich werde das aber mal ausführlich testen.

Die Japan-DB muss ich mir noch im Detail ansehen, beim ersten Test funktioniert aber deren NotesAPI-Umsetzung, nur deren REMs sind nicht wirklich lesbar  ;D
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline blauer_klabauter

  • Frischling
  • *
  • Beiträge: 2
Re: Agent Log: Auslesen & Löschen
« Antwort #7 am: 29.12.05 - 00:45:20 »
Hallo zusammen,

der Thread ist zwar schon ein wenig alt, aber ich bin gerade auf der Suche, wie man mit diesem Item umgeht und dabei hierauf gestossen.
Ganz so einfach wie Ihr euch das hier vorstellt, ist das nämlich nicht. Wenn das Item nicht mehr da ist, dann stößt das dem AgentManger übel auf, denn er wird den Agenten fortan nicht mehr ausführen.
Wenn man nur ein API-Recompile durchführt, kommt nur ein "NoteItem not found". Macht man einige weitere Dinge, wie einen neuen Object_Descriptor anzulegen und diesen in dem Item zu speichern, dann kommt (bis jetzt) "Data corrupt". Natürlich nicht mehr, wenn man den Agenten wieder per Designer abspeichert, aber das ist ja kein "programmatischer" Vorgang :-)

Wie gesagt, ich bin da auf der Suche. Ich benötige das alles für ein API recompile, was aber nur korrekt funktioniert, wenn man dieses $AssistRinInfo Item richtig anlegt.

Gruß Joe

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz