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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update automation logger to include object_id like scripts #37948

Merged
merged 2 commits into from Jul 22, 2020

Conversation

pnbruckner
Copy link
Contributor

Proposed change

During the development of the new script helper features it was decided that automation & script loggers should include the entity's object ID. E.g., homeassistant.components.automation.my_automation or homeassistant.components.script.my_script. This was done for scripts, but was overlooked for automations. And for automations, the object ID isn't known when the AutomationEntity is first created, but later when its async_added_to_hass() method is called.

This PR enhances the "script helper" class (homeassistant.helpers.script.Script) to allow the logger provided to be updated (including in any sub-scripts it has created for repeat and choose actions) with a new logger, and enhances the automation integration to create a new logger, once the object ID is known, and use it for itself as well as to update the Script object created for its action section.

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • The code has been formatted using Black (black --fast homeassistant tests)
  • Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • No score or internal
  • 馃 Silver
  • 馃 Gold
  • 馃弳 Platinum

@probot-home-assistant
Copy link

Hey there @home-assistant/core, mind taking a look at this pull request as its been labeled with an integration (automation) you are listed as a codeowner for? Thanks!
(message by CodeOwnersMention)

@pnbruckner
Copy link
Contributor Author

Just rebased to try and get code coverage tests to pass.

@pnbruckner pnbruckner merged commit 65d1dfb into dev Jul 22, 2020
@delete-merged-branch delete-merged-branch bot deleted the automation-logger branch July 22, 2020 15:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants