From 2d2f00cb4c3ac94d233d9a834eec8d69613006b0 Mon Sep 17 00:00:00 2001 From: Peter Maquiran Date: Wed, 31 Jul 2024 09:35:35 +0100 Subject: [PATCH] add tracing tags --- .../user-remote-repository.service.ts | 9 ++--- .../user/data/user-repository.service.ts | 2 +- .../pages/events/attendees/attendees.page.ts | 27 ++++++-------- .../despachos/despacho/despacho.page.ts | 10 +++++- .../diplomas/diploma/diploma.page.ts | 5 ++- src/app/services/http.service.ts | 3 +- .../attendee-modal/attendee-modal.page.ts | 35 +++++++------------ src/app/shared/header/header.page.ts | 1 + version/git-version.ts | 12 +++---- 9 files changed, 51 insertions(+), 53 deletions(-) diff --git a/src/app/module/user/data/datasource/user-remote-repository.service.ts b/src/app/module/user/data/datasource/user-remote-repository.service.ts index 66ba7f6d9..882b96336 100644 --- a/src/app/module/user/data/datasource/user-remote-repository.service.ts +++ b/src/app/module/user/data/datasource/user-remote-repository.service.ts @@ -3,6 +3,7 @@ import { HttpService } from 'src/app/services/http.service'; import { environment } from 'src/environments/environment'; import { IProfilePictureInputDTO } from '../dto/profilePictureInputDTO'; import { HttpHeaders } from '@angular/common/http'; +import { TracingType } from 'src/app/services/monitoring/opentelemetry/tracer'; @Injectable({ providedIn: 'root' @@ -13,14 +14,14 @@ export class UserRemoteRepositoryService { private httpService: HttpService ) { } - getUserProfilePhoto(guid: string) { + getUserProfilePhoto(guid: string, tracing?: TracingType) { const geturl = environment.apiURL + 'UserAuthentication/GetPhoto'; - + const params = { UserPhoto: guid } - return this.httpService.get(`${geturl}`, params); + return this.httpService.get(`${geturl}`, params, tracing); } addUserProfilePhoto(data: IProfilePictureInputDTO) { @@ -33,7 +34,7 @@ export class UserRemoteRepositoryService { let options = { headers: http }; - + return this.httpService.post(`${geturl}`, data, options); } } diff --git a/src/app/module/user/data/user-repository.service.ts b/src/app/module/user/data/user-repository.service.ts index 8c46aa7f2..5e5bb38da 100644 --- a/src/app/module/user/data/user-repository.service.ts +++ b/src/app/module/user/data/user-repository.service.ts @@ -15,7 +15,7 @@ export class UserRepositoryService { ) { } async getUserProfilePhoto(guid: string , tracing?: TracingType) { - const result = await this.remote.getUserProfilePhoto(guid) + const result = await this.remote.getUserProfilePhoto(guid, tracing) if(result.isOk()) { this.local.addProfilePicture({base64: 'data:image/jpeg;base64,' + result.value}) diff --git a/src/app/pages/events/attendees/attendees.page.ts b/src/app/pages/events/attendees/attendees.page.ts index 798e70ec2..1466b46fd 100644 --- a/src/app/pages/events/attendees/attendees.page.ts +++ b/src/app/pages/events/attendees/attendees.page.ts @@ -6,6 +6,8 @@ import { ThemeService } from 'src/app/services/theme.service' import { LoginUserRespose } from 'src/app/models/user.model'; import { SessionStore } from 'src/app/store/session.service'; import { Router } from '@angular/router'; +import { ContactRepositoryService } from 'src/app/services/Repositorys/contacts/repository/contacts-repository.service'; + @Component({ selector: 'app-attendees', @@ -25,18 +27,16 @@ export class AttendeesPageModal implements OnInit { taskParticipants:EventPerson[] = []; taskParticipantsCc:EventPerson[] = []; loggeduser: LoginUserRespose; - @Input() loggedAttendSon: boolean; hideExternalDomain = true; taskType: any; constructor( - private modalCtrl: ModalController, - private contactsService: ContactsService, private navParams: NavParams, private modalController: ModalController, public ThemeService: ThemeService, - private router: Router,) { + private router: Router, + private ContactRepositoryService: ContactRepositoryService) { this.adding = this.navParams.get('adding'); this.taskParticipants = this.navParams.get('taskParticipants'); @@ -49,7 +49,6 @@ export class AttendeesPageModal implements OnInit { } ngOnInit() { - console.log('Pesquisa de contactos current path1',this.router.url) this.fetchContacts(""); if(this.taskParticipants == null || this.taskParticipants == undefined){ @@ -136,7 +135,10 @@ export class AttendeesPageModal implements OnInit { async fetchContacts(filter: string) { this.showLoader = true; - this.contactsService.getContacts(filter).subscribe(_result => { + const RequestResult = await this.ContactRepositoryService.getUsersMap(); + if(RequestResult.isOk()) { + const _result = RequestResult.value + let result = _result.filter( e => e.UserType == 'GD' && e.EmailAddress.toLocaleLowerCase().includes(filter.toLocaleLowerCase())) @@ -152,26 +154,19 @@ export class AttendeesPageModal implements OnInit { }); } - if(this.loggedAttendSon) { - this.contacts = result; - this.showLoader = false; - } else { - this.contacts = result; + this.contacts = result as any; // console.log('Attendes Email',this.loggeduser.Email) let filterLoggedUserEmail = this.contacts.filter(item => item.EmailAddress.toLocaleLowerCase() != this.loggeduser.Email.toLocaleLowerCase()) if(this.taskType == 0 || this.taskType == 1){ filterLoggedUserEmail = this.contacts.filter(item => item.IsPR == false) - } + } // console.log('Attendes Email', filterLoggedUserEmail) let filterEmptyEmail = filterLoggedUserEmail.filter(item => item.EmailAddress.toLocaleLowerCase() != "") this.contacts = filterEmptyEmail; //console.log('Attendes Email', this.contacts) this.showLoader = false; - - } - } - ); + } } diff --git a/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts b/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts index 63d60add0..60571491d 100644 --- a/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts +++ b/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts @@ -27,6 +27,7 @@ import { DocumentViewerOptionService } from "src/app/services/document-viewer-op import { fromEvent, merge, interval, Subscription } from 'rxjs'; import { takeUntil, filter, switchMap, take } from 'rxjs/operators'; import { DespachosOptionsPage } from 'src/app/shared/popover/despachos-options/despachos-options.page'; +import { TracingType, XTracerAsync } from 'src/app/services/monitoring/opentelemetry/tracer'; @Component({ selector: 'app-despacho', @@ -214,10 +215,15 @@ export class DespachoPage implements OnInit { this.mergedArray.push(docObject); }); } - getDraft(split_stringDraft: string[]) { + + @XTracerAsync({name:'task/getDraft', bugPrint: true}) + getDraft(split_stringDraft: string[], tracing?: TracingType) { split_stringDraft.forEach(element => { // console.log('List of ids', element) + tracing.addEvent('start GetDraftByID') this.processes.GetDraftByID(element).subscribe((resd) => { + tracing.addEvent('end GetDraftByID') + tracing.setAttribute('sdfsdf', 'asdfsfd'); let object = { "ApplicationId": "", "Assunto": resd.data.description, @@ -235,6 +241,8 @@ export class DespachoPage implements OnInit { } this.mergedArray.push(object) // console.log('List of draff', resd) + }, (error) => { + console.log(error) }) }); diff --git a/src/app/pages/gabinete-digital/diplomas/diploma/diploma.page.ts b/src/app/pages/gabinete-digital/diplomas/diploma/diploma.page.ts index 4da6605e1..ad80c3e27 100644 --- a/src/app/pages/gabinete-digital/diplomas/diploma/diploma.page.ts +++ b/src/app/pages/gabinete-digital/diplomas/diploma/diploma.page.ts @@ -22,6 +22,7 @@ import { TaskService } from 'src/app/services/task.service' import { TinyMCEPage } from 'src/app/tiny-mce/tiny-mce.page'; import { DespachosPrOptionsPage } from 'src/app/shared/popover/despachos-pr-options/despachos-pr-options.page'; import { DiplomaOptionsPage } from 'src/app/shared/popover/deploma-options/deploma-options.page'; +import { TracingType, XTracerAsync } from 'src/app/services/monitoring/opentelemetry/tracer'; @Component({ @@ -541,7 +542,9 @@ export class DiplomaPage implements OnInit { this.mergedArray.push(docObject); }); } - async getDraft(split_stringDraft: string[]) { + + @XTracerAsync({name:'task/getDraft', bugPrint: true}) + async getDraft(split_stringDraft: string[], tracing?: TracingType) { this.DraftNames = "" for(const strg of split_stringDraft) { diff --git a/src/app/services/http.service.ts b/src/app/services/http.service.ts index 04f98f225..2c5be3a1e 100644 --- a/src/app/services/http.service.ts +++ b/src/app/services/http.service.ts @@ -45,15 +45,16 @@ export class HttpService { return ok (result as T) } catch (e) { + tracing?.setAttribute('url', url) if(isHttpError(e)) { tracing?.setAttribute('status.code', e.status.toString()) if (e.status == 400) { tracing?.setAttribute('outcome', 'failed') } } else { - tracing.setAttribute('outcome', 'failed') tracing?.setAttribute('map.error', 'true') tracing?.setAttribute('map.error.context', JSON.stringify(e)) + tracing.setAttribute('outcome', 'failed') } return err(e as HttpErrorResponse) } diff --git a/src/app/shared/event/attendee-modal/attendee-modal.page.ts b/src/app/shared/event/attendee-modal/attendee-modal.page.ts index 007441e9a..2a53d116a 100644 --- a/src/app/shared/event/attendee-modal/attendee-modal.page.ts +++ b/src/app/shared/event/attendee-modal/attendee-modal.page.ts @@ -36,7 +36,6 @@ export class AttendeePage implements OnInit { @Input() taskParticipants: EventPerson[] = []; @Input() taskParticipantsCc: EventPerson[] = []; - @Input() loggedAttendSon: boolean; @Input() footer: boolean; @@ -67,7 +66,6 @@ export class AttendeePage implements OnInit { ngOnChanges() { this.LtaskParticipants = removeDuplicate(this.taskParticipants); this.LtaskParticipantsCc = removeDuplicate(this.taskParticipantsCc); - console.log('PARTE PARTE', this.loggedAttendSon) } currentPath = window.location.pathname; @@ -75,11 +73,6 @@ export class AttendeePage implements OnInit { ngOnInit() { console.log('TASK TYPE',this.taskType); - console.log('Pesquisa de contactos current path3', this.router.url) - setTimeout(() => { - console.log('PARTE PARTE', this.loggedAttendSon) - }); - this.fetchContacts(""); if (this.LtaskParticipants == null || this.LtaskParticipants == undefined) { @@ -253,23 +246,19 @@ export class AttendeePage implements OnInit { }); } - if (this.loggedAttendSon) { - this.contacts = this.sort(result as any); - this.showLoader = false; - } else { - this.contacts = this.sort(result as any); - // console.log('Attendes Email', this.loggeduser.Email) - let filterLoggedUserEmail = this.contacts.filter(item => item.EmailAddress.toLocaleLowerCase() != this.loggeduser.Email.toLocaleLowerCase()) - if(this.taskType == 0 || this.taskType == 1){ - filterLoggedUserEmail = this.contacts.filter(item => item.IsPR == false) - } - // console.log('Attendes Email', filterLoggedUserEmail) - let filterEmptyEmail = filterLoggedUserEmail.filter(item => item.EmailAddress.toLocaleLowerCase() != "") - this.contacts = filterEmptyEmail; - // console.log('Attendes Email', this.contacts) - this.showLoader = false; + this.contacts = this.sort(result as any); + // console.log('Attendes Email', this.loggeduser.Email) + let filterLoggedUserEmail = this.contacts.filter(item => item.EmailAddress.toLocaleLowerCase() != this.loggeduser.Email.toLocaleLowerCase()) + if(this.taskType == 0 || this.taskType == 1){ + filterLoggedUserEmail = this.contacts.filter(item => item.IsPR == false) + } + // console.log('Attendes Email', filterLoggedUserEmail) + let filterEmptyEmail = filterLoggedUserEmail.filter(item => item.EmailAddress.toLocaleLowerCase() != "") + this.contacts = filterEmptyEmail; + // console.log('Attendes Email', this.contacts) + this.showLoader = false; + - } } else { diff --git a/src/app/shared/header/header.page.ts b/src/app/shared/header/header.page.ts index fa20bd9bb..26eb544b8 100644 --- a/src/app/shared/header/header.page.ts +++ b/src/app/shared/header/header.page.ts @@ -142,6 +142,7 @@ export class HeaderPage implements OnInit { this.profilePicture = 'data:image/jpeg;base64,' + base.value; tracing.setAttribute("picture.save", "true") + tracing.setAttribute("outcome", "success") } else { if(!isHttpError(base.error)) { diff --git a/version/git-version.ts b/version/git-version.ts index 65cf48d00..e791a94df 100644 --- a/version/git-version.ts +++ b/version/git-version.ts @@ -1,11 +1,11 @@ export let versionData = { - "shortSHA": "8f0625eed", - "SHA": "8f0625eed4612d4f1564895de23a9ec633f54ca0", + "shortSHA": "edcaf951c", + "SHA": "edcaf951c2d85b037c7a00583fc3fc2634fdae89", "branch": "feature/agenda-api-peter", "lastCommitAuthor": "'Peter Maquiran'", - "lastCommitTime": "'Mon Jul 29 17:36:35 2024 +0100'", - "lastCommitMessage": "expand click area", - "lastCommitNumber": "5894", - "changeStatus": "On branch feature/agenda-api-peter\nYour branch is up to date with 'origin/feature/agenda-api-peter'.\n\nChanges to be committed:\n (use \"git restore --staged ...\" to unstage)\n\tmodified: package-lock.json\n\tmodified: package.json\n\tmodified: src/app/app.module.ts\n\tmodified: src/app/modals/profile/profile.page.ts\n\tmodified: src/app/pages/gabinete-digital/gabinete-digital.page.html\n\tmodified: src/app/pages/gabinete-digital/gabinete-digital.page.ts\n\tmodified: src/app/services/decorator/api-validate-schema.decorator.ts\n\tmodified: src/app/services/monitoring/opentelemetry/tracer.ts\n\tmodified: src/app/services/notifications.service.ts\n\tmodified: src/main.ts", + "lastCommitTime": "'Tue Jul 30 15:52:07 2024 +0100'", + "lastCommitMessage": "improve monitoring the solution", + "lastCommitNumber": "5895", + "changeStatus": "On branch feature/agenda-api-peter\nYour branch is ahead of 'origin/feature/agenda-api-peter' by 1 commit.\n (use \"git push\" to publish your local commits)\n\nChanges to be committed:\n (use \"git restore --staged ...\" to unstage)\n\tmodified: src/app/module/user/data/datasource/user-remote-repository.service.ts\n\tmodified: src/app/module/user/data/user-repository.service.ts\n\tmodified: src/app/pages/events/attendees/attendees.page.ts\n\tmodified: src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts\n\tmodified: src/app/pages/gabinete-digital/diplomas/diploma/diploma.page.ts\n\tmodified: src/app/services/http.service.ts\n\tmodified: src/app/shared/event/attendee-modal/attendee-modal.page.ts\n\tmodified: src/app/shared/header/header.page.ts\n\tmodified: version/git-version.ts", "changeAuthor": "peter.maquiran" } \ No newline at end of file