Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactorings and logging improvements to -handleMassHerateResend, -handleEhoksOpiskeluoikeusUpdate, -handleAMISTimedOperations, -handleDeleteTunnus, -handleDLQresend #230

Merged
merged 4 commits into from
Jun 26, 2023

Conversation

pkalliok
Copy link
Contributor

@pkalliok pkalliok commented May 15, 2023

Kuvaus muutoksista

Muutamien funktioiden hajotus pienemmäksi, muutama uudelleennimeäminen, ja lokitusta jälleen sellaiseksi että jokainen käsiteltävä tietue lokitetaan ainakin kerran.

https://jira.eduuni.fi/browse/EH-1451

Muistilista PR:n tekijälle ja katselmoijille

Ennen asettamista katselmointiin

  • Build onnistuu ilman virheitä
  • Toiminnallisuuden kattavat yksikkötestit on tehty osana PR:ia
  • PR:n sisältämät muutokset noudattavat sovittuja koodikäytänteitä
  • Koodi on riittävästi dokumentoitu tai se on muuten yksiselitteistä
  • Nimet (muuttujat, funktiot, ...) kuvaavat koodia hyvin

Katselmoijat tarkastavat, että yllä mainitut kohdat toteutuvat

Ennen mergeämistä master-haaralle

  • Vähintään yksi kehittäjä on katselmoinut ja hyväksynyt muutokset
    • Jos muutoksilla voi jotain rikkoessaan olla kauaskantoiset vaikutukset, kannattaa muutokset hyväksyttää useammalla katselmoijalla
  • Katselmoijien esittämät muutosehdotukset on huomioitu
  • Muutokset on testattu QA-ympäristössä
  • Yli jääneet kehityskohteet on tiketöity

@pkalliok pkalliok requested review from tomikat and severij May 15, 2023 09:55
@pkalliok pkalliok changed the title Refactorings and add logging improvements to -handleMassHerateResend, -handleEhoksOpiskeluoikeusUpdate, -handleAMISTimedOperations, -handleDeleteTunnus, -handleDLQresend Refactorings and logging improvements to -handleMassHerateResend, -handleEhoksOpiskeluoikeusUpdate, -handleAMISTimedOperations, -handleDeleteTunnus, -handleDLQresend May 15, 2023
@pkalliok pkalliok changed the base branch from pkalliok-EH-1451-5 to master May 15, 2023 10:11
@tomikat tomikat self-assigned this May 19, 2023
@tomikat tomikat removed their assignment May 19, 2023
@pkalliok
Copy link
Contributor Author

Laitan muutokset palleroon ja testailen.

@pkalliok
Copy link
Contributor Author

päivitetty vasta masteriin, ei muuta.

@pkalliok
Copy link
Contributor Author

otan tän testaukseen.

@pkalliok
Copy link
Contributor Author

handleMassHerateResend testi: Ajettu kys. lambda tyhjällä eventillä, tulos:

Transforming org/apache/logging/log4j/core/lookup/JndiLookup (lambdainternal.CustomerClassLoader@37bba400)
Transforming org/apache/logging/log4j/core/lookup/JndiLookup (lambdainternal.CustomerClassLoader@37bba400)
START RequestId: a5b1e613-9ba6-4fb0-b08a-e3b41cb27974 Version: $LATEST
{"instant":{"epochSecond":1687271374,"nanoOfSecond":664000000},"thread":"main","level":"INFO","loggerName":"oph.heratepalvelu.log.caller-log","message":"Lambdaa handleMassHerateResend kutsuttiin SQS:n toimesta (RequestId: a5b1e613-9ba6-4fb0-b08a-e3b41cb27974 )","endOfBatch":false,"loggerFqcn":"org.apache.logging.slf4j.Log4jLogger","threadId":1,"threadPriority":5}
Jun 20, 2023 2:29:35 PM com.amazonaws.xray.config.DaemonConfiguration <init>
INFO: Environment variable AWS_XRAY_DAEMON_ADDRESS is set. Emitting to daemon on address 169.254.79.129:2000.
Jun 20, 2023 2:29:35 PM com.amazonaws.xray.AWSXRayRecorder <init>
INFO: Overriding contextMissingStrategy. Environment variable AWS_XRAY_CONTEXT_MISSING has value: "LOG_ERROR".
Jun 20, 2023 2:29:35 PM com.amazonaws.xray.config.DaemonConfiguration <init>
INFO: Environment variable AWS_XRAY_DAEMON_ADDRESS is set. Emitting to daemon on address 169.254.79.129:2000.
{"instant":{"epochSecond":1687271380,"nanoOfSecond":466000000},"thread":"main","level":"INFO","loggerName":"oph.heratepalvelu.amis.AMISehoksTimedOperationsHandler","message":"Lähetetty 1 aloitusviestiä ja 0 päättöviestiä","endOfBatch":false,"loggerFqcn":"org.apache.logging.slf4j.Log4jLogger","threadId":1,"threadPriority":5}
END RequestId: a5b1e613-9ba6-4fb0-b08a-e3b41cb27974
REPORT RequestId: a5b1e613-9ba6-4fb0-b08a-e3b41cb27974	Duration: 25167.30 ms	Billed Duration: 25168 ms	Memory Size: 1024 MB	Max Memory Used: 280 MB	
XRAY TraceId: 1-6491b7b0-5aa498455dfba56443cd50c2	SegmentId: 5be88cad0ef08680	Sampled: true	

@pkalliok
Copy link
Contributor Author

handleEhoksOpiskeluoikeusUpdate ajo tyhjällä eventillä:

update-ehoks-opiskeluoikeudet result: {:cached nil, :request-time 648, :repeatable? false, :protocol-version {:name HTTP, :major 1, :minor 1}, :streaming? false, :http-client #object[org.apache.http.impl.client.InternalHttpClient 0x4c2cc639 org.apache.http.impl.client.InternalHttpClient@4c2cc639], :chunked? false, :reason-phrase No Content, :headers {Server nginx, X-Content-Type-Options nosniff, X-Frame-Options SAMEORIGIN, Strict-Transport-Security max-age=16180339; includeSubDomains, X-Robots-Tag noindex, nofollow, noarchive, Connection close, Expires 0, Date Tue, 20 Jun 2023 14:32:29 GMT, X-XSS-Protection 1; mode=block, Cache-Control no-cache, max-age=0}, :orig-content-encoding nil, :status 204, :length 0, :body nil, :trace-redirects []}

@pkalliok
Copy link
Contributor Author

handleAMISTimedOperations tyhjällä eventillä:

Transforming org/apache/logging/log4j/core/lookup/JndiLookup (lambdainternal.CustomerClassLoader@37bba400)
START RequestId: 3384a318-41bd-4f32-9b6e-ef953d317f2b Version: $LATEST
{"instant":{"epochSecond":1687271799,"nanoOfSecond":422000000},"thread":"main","level":"INFO","loggerName":"oph.heratepalvelu.log.caller-log","message":"Lambdaa handleAMISTimedOperations kutsuttiin SQS:n toimesta (RequestId: 3384a318-41bd-4f32-9b6e-ef953d317f2b )","endOfBatch":false,"loggerFqcn":"org.apache.logging.slf4j.Log4jLogger","threadId":1,"threadPriority":5}
{"instant":{"epochSecond":1687271799,"nanoOfSecond":617000000},"thread":"main","level":"INFO","loggerName":"oph.heratepalvelu.amis.AMISehoksTimedOperationsHandler","message":"Pyydetään eHOKSia lähettämään uudestaan herätteet kaikille aloittaneille tai suorituksia saaneille, joilla ei ole vielä kyselylinkkiä","endOfBatch":false,"loggerFqcn":"org.apache.logging.slf4j.Log4jLogger","threadId":1,"threadPriority":5}
Jun 20, 2023 2:36:39 PM com.amazonaws.xray.config.DaemonConfiguration <init>
INFO: Environment variable AWS_XRAY_DAEMON_ADDRESS is set. Emitting to daemon on address 169.254.79.129:2000.
Jun 20, 2023 2:36:40 PM com.amazonaws.xray.AWSXRayRecorder <init>
INFO: Overriding contextMissingStrategy. Environment variable AWS_XRAY_CONTEXT_MISSING has value: "LOG_ERROR".
Jun 20, 2023 2:36:40 PM com.amazonaws.xray.config.DaemonConfiguration <init>
INFO: Environment variable AWS_XRAY_DAEMON_ADDRESS is set. Emitting to daemon on address 169.254.79.129:2000.
{"instant":{"epochSecond":1687271805,"nanoOfSecond":184000000},"thread":"main","level":"INFO","loggerName":"oph.heratepalvelu.amis.AMISehoksTimedOperationsHandler","message":"Lähetetty 33 viestiä","endOfBatch":false,"loggerFqcn":"org.apache.logging.slf4j.Log4jLogger","threadId":1,"threadPriority":5}
{"instant":{"epochSecond":1687271805,"nanoOfSecond":185000000},"thread":"main","level":"INFO","loggerName":"oph.heratepalvelu.amis.AMISehoksTimedOperationsHandler","message":"Käynnistetään opiskelijan yhteystietojen poisto","endOfBatch":false,"loggerFqcn":"org.apache.logging.slf4j.Log4jLogger","threadId":1,"threadPriority":5}
{"instant":{"epochSecond":1687271805,"nanoOfSecond":642000000},"thread":"main","level":"INFO","loggerName":"oph.heratepalvelu.amis.AMISehoksTimedOperationsHandler","message":"Käydään läpi 0 hoksin tiedot","endOfBatch":false,"loggerFqcn":"org.apache.logging.slf4j.Log4jLogger","threadId":1,"threadPriority":5}
END RequestId: 3384a318-41bd-4f32-9b6e-ef953d317f2b
REPORT RequestId: 3384a318-41bd-4f32-9b6e-ef953d317f2b	Duration: 6358.61 ms	Billed Duration: 6359 ms	Memory Size: 1024 MB	Max Memory Used: 347 MB	Init Duration: 9264.36 ms	
XRAY TraceId: 1-6491b96d-3099340012ac12df4ad85a31	SegmentId: 54b6c8273c608549	Sampled: true	

Koska eHOKS palautti 0 hoksia, tässä on tietysti koodipolkuja joita ei testattu.

@pkalliok
Copy link
Contributor Author

pkalliok commented Jun 20, 2023

handleDeleteTunnus testi:

(myenv) atehwa@polokku:~/proj/cloud-base$ aws sqs send-message --profile oph-dev --queue-url https://eu-west-1.queue.amazonaws.com/153563371259/pallero-services-heratepalvelu-amisDeleteTunnusQueue --message-body '{"kyselylinkki": "foobar"}'
{
    "MD5OfMessageBody": "27cc686c81e6dd7e5580519992fd227d",
    "MessageId": "ec390f6b-5849-431e-945c-b1a89aba18a1"
}

Tulos cloudwatchissa:

Lambdaa handleDeleteTunnus kutsuttiin SQS:n toimesta (RequestId: d7e222e8-adcb-5c80-9fbd-7fe313132464)
Käsitellään heräte {:kyselylinkki foobar}

Koska tää on vähän turhan lakonista, lisään vielä lokituksen siitä, jos kyselylinkkiä ei löydy.

also, rename delete-tunnus-checker to deletion-schema-errors
also, rename get-retry-kyselylinkit -> send-kasittelemattomat-heratteet!
@pkalliok
Copy link
Contributor Author

No niin, nyt deleteTunnusHandler näyttää paremmalta.

(myenv) atehwa@polokku:~/proj/cloud-base$ aws sqs send-message --profile oph-dev --queue-url https://eu-west-1.queue.amazonaws.com/153563371259/pallero-services-heratepalvelu-amisDeleteTunnusQueue --message-body '{"kyselylinkki": "foobar67"}'
Enter MFA code for arn:aws:iam::974209274254:mfa/panu.kalliokoski@sange.fi: 
{
    "MD5OfMessageBody": "c36ff82c63a7260dce5a7b4656c625d9",
    "MessageId": "d688d8f5-eb99-4e4e-9054-b141794c6d23"
}

Lokit:

Lambdaa handleDeleteTunnus kutsuttiin SQS:n toimesta (RequestId: f50ba87d-90c8-535a-92ae-f571094eb924 )
Käsitellään heräte {:kyselylinkki foobar67}
Ei löytynyt tietuetta tällä kyselylinkillä

@pkalliok
Copy link
Contributor Author

en onnistunut keksimään, miten saan jonkin viestin prosessoiduksi handleDLQresend:ssa. ;_;

(myenv) atehwa@polokku:~/proj/cloud-base$ aws sqs send-message --profile oph-dev --queue-url https://eu-west-1.queue.amazonaws.com/153563371259/pallero-services-heratepalvelu-HerateDeadLetterQueue63A3CFFB-VEJ29OX5GUKR --message-body '{"kyselylinkki": "foobar67"}'
{
    "MD5OfMessageBody": "c36ff82c63a7260dce5a7b4656c625d9",
    "MessageId": "017c19b4-f779-41a8-8fa2-befa4bc20857"
}

Mut lokista löytyy vain:

Lambdaa handleDLQresend kutsuttiin SQS:n toimesta (RequestId: 7637ad86-e3a6-4fed-94f9-906ed4a4f674 )

@pkalliok pkalliok merged commit 5e57940 into master Jun 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants