fix: handle weather art generation errors properly

- Ensure created weather art is deleted if an error occurs
- Log detailed error messages for better debugging

This change improves the stability of the weather art
generation process by ensuring that failed operations
release resources properly, preventing potential
memory leaks or database clutter.
This commit is contained in:
songtianlun 2025-03-15 23:16:21 +08:00
parent 0a75ea9bd5
commit 2f33f92f49

View File

@ -13,9 +13,10 @@ class GenerateWeatherArtWorker
image_url = generate_image(prompt)
return unless image_url
create_weather_art(weather_data, prompt, image_url)
w = create_weather_art(weather_data, prompt, image_url)
Rails.logger.info "Successful Generate Weather Art In #{city.name}"
rescue StandardError => e
w.delete if w
Rails.logger.error "Error generating weather art for city #{city_id}: #{e.message}"
Rails.logger.error e.backtrace.join("\n")
end