Skip to content

fix: Degreed: Missing Learner Data Audit Records - #1490

Merged
johnnagro merged 3 commits into
masterfrom
jnagro/ENT-5558/0
Mar 10, 2022
Merged

fix: Degreed: Missing Learner Data Audit Records#1490
johnnagro merged 3 commits into
masterfrom
jnagro/ENT-5558/0

Conversation

@johnnagro

@johnnagro johnnagro commented Mar 9, 2022

Copy link
Copy Markdown
Contributor

Description

  • degreed2 seems to be unable to successfully send learner audit records
  • looks like we were serializing data in the client rather than the model
  • integrated channel transmitter was expecing serialization in model
  • test tweaks but there is more we can add to tests

Associated Splunk logs:

2022-03-09 14:59:48,232 ERROR 1450 [celery.app.trace] [user None] [ip None] trace.py:265 - Task integrated_channels.integrated_channel.tasks.transmit_learner_data[f5628262-9285-4ad3-864a-6d958cc8e920] raised unexpected: AttributeError("'Degreed2LearnerDataTransmissionAudit' object has no attribute 'serialize'")
Traceback (most recent call last):
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/celery/app/trace.py", line 451, in trace_task
    R = retval = fun(*args, **kwargs)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/newrelic/hooks/application_celery.py", line 99, in wrapper
    return wrapped(*args, **kwargs)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/celery/app/trace.py", line 734, in __protected_call__
    return self.run(*args, **kwargs)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/edx_django_utils/monitoring/internal/code_owner/utils.py", line 193, in new_function
    return wrapped_function(*args, **kwargs)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/integrated_channels/integrated_channel/tasks.py", line 109, in transmit_learner_data
    integrated_channel.transmit_learner_data(api_user)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/integrated_channels/integrated_channel/models.py", line 197, in transmit_learner_data
    transmitter.transmit(exporter)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/integrated_channels/degreed2/transmitters/learner_data.py", line 35, in transmit
    super().transmit(payload, **kwargs)
  File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/integrated_channels/integrated_channel/transmitters/learner_data.py", line 260, in transmit
    serialized_payload = learner_data.serialize(enterprise_configuration=self.enterprise_configuration)
AttributeError: 'Degreed2LearnerDataTransmissionAudit' object has no attribute 'serialize'

References

- looks like we were serializing data in the client rather than the model
- integrated channel transmitter was expecing serialization in model
- test tweaks but there is more we can add to tests

ENT-5558

@binodpant binodpant left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm, we don't have a staging env to test sgainst rn we will have to test in prd for now until we have integ testing setup (discussed offline)

@johnnagro
johnnagro merged commit add23ec into master Mar 10, 2022
@johnnagro
johnnagro deleted the jnagro/ENT-5558/0 branch March 10, 2022 15:22
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