diff --git a/erpnext/accounts/deferred_revenue.py b/erpnext/accounts/deferred_revenue.py index a8776fa3448..f319003876b 100644 --- a/erpnext/accounts/deferred_revenue.py +++ b/erpnext/accounts/deferred_revenue.py @@ -539,19 +539,11 @@ def make_gl_entries( frappe.db.commit() except Exception as e: if frappe.flags.in_test: - traceback = frappe.get_traceback() - frappe.log_error( - title=_("Error while processing deferred accounting for Invoice {0}").format(doc.name), - message=traceback, - ) + doc.log_error(f"Error while processing deferred accounting for Invoice {doc.name}") raise e else: frappe.db.rollback() - traceback = frappe.get_traceback() - frappe.log_error( - title=_("Error while processing deferred accounting for Invoice {0}").format(doc.name), - message=traceback, - ) + doc.log_error(f"Error while processing deferred accounting for Invoice {doc.name}") frappe.flags.deferred_accounting_error = True @@ -632,12 +624,7 @@ def book_revenue_via_journal_entry( frappe.db.commit() except Exception: frappe.db.rollback() - traceback = frappe.get_traceback() - frappe.log_error( - title=_("Error while processing deferred accounting for Invoice {0}").format(doc.name), - message=traceback, - ) - + doc.log_error(f"Error while processing deferred accounting for Invoice {doc.name}") frappe.flags.deferred_accounting_error = True diff --git a/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.py b/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.py index 3540f0b0e01..3f5c064f4b9 100644 --- a/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.py +++ b/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.py @@ -136,7 +136,7 @@ def start_import( except Exception: frappe.db.rollback() data_import.db_set("status", "Error") - frappe.log_error(title=data_import.name) + data_import.log_error("Bank Statement Import failed") finally: frappe.flags.in_import = False diff --git a/erpnext/accounts/doctype/bank_transaction/bank_transaction_upload.py b/erpnext/accounts/doctype/bank_transaction/bank_transaction_upload.py index 9f2731de554..372c53d4992 100644 --- a/erpnext/accounts/doctype/bank_transaction/bank_transaction_upload.py +++ b/erpnext/accounts/doctype/bank_transaction/bank_transaction_upload.py @@ -56,7 +56,7 @@ def create_bank_entries(columns, data, bank_account): bank_transaction.submit() success += 1 except Exception: - frappe.log_error(frappe.get_traceback()) + bank_transaction.log_error("Bank entry creation failed") errors += 1 return {"success": success, "errors": errors} diff --git a/erpnext/accounts/doctype/ledger_merge/ledger_merge.py b/erpnext/accounts/doctype/ledger_merge/ledger_merge.py index c1e2975fbc9..18e5a1ac85b 100644 --- a/erpnext/accounts/doctype/ledger_merge/ledger_merge.py +++ b/erpnext/accounts/doctype/ledger_merge/ledger_merge.py @@ -62,7 +62,7 @@ def start_merge(docname): ) except Exception: frappe.db.rollback() - frappe.log_error(title=ledger_merge.name) + ledger_merge.log_error("Ledger merge failed") finally: if successful_merges == total: ledger_merge.db_set("status", "Success") diff --git a/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py b/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py index 2d9ae9377fb..99377421c58 100644 --- a/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py +++ b/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py @@ -2,9 +2,6 @@ # For license information, please see license.txt -import traceback -from json import dumps - import frappe from frappe import _, scrub from frappe.model.document import Document @@ -247,11 +244,7 @@ def start_import(invoices): except Exception: errors += 1 frappe.db.rollback() - message = "\n".join( - ["Data:", dumps(d, default=str, indent=4), "--" * 50, "\nException:", traceback.format_exc()] - ) - frappe.log_error(title="Error while creating Opening Invoice", message=message) - frappe.db.commit() + doc.log_error("Opening invoice creation failed") if errors: frappe.msgprint( _("You had {} errors while creating opening invoices. Check {} for more details").format( diff --git a/erpnext/accounts/doctype/subscription/subscription.py b/erpnext/accounts/doctype/subscription/subscription.py index f6dd86afa21..2243b191dac 100644 --- a/erpnext/accounts/doctype/subscription/subscription.py +++ b/erpnext/accounts/doctype/subscription/subscription.py @@ -722,9 +722,7 @@ def process(data): frappe.db.commit() except frappe.ValidationError: frappe.db.rollback() - frappe.db.begin() - frappe.log_error(frappe.get_traceback()) - frappe.db.commit() + subscription.log_error("Subscription failed") @frappe.whitelist() diff --git a/erpnext/crm/doctype/linkedin_settings/linkedin_settings.py b/erpnext/crm/doctype/linkedin_settings/linkedin_settings.py index b4657a2e362..64b3a017b46 100644 --- a/erpnext/crm/doctype/linkedin_settings/linkedin_settings.py +++ b/erpnext/crm/doctype/linkedin_settings/linkedin_settings.py @@ -72,7 +72,7 @@ class LinkedInSettings(Document): if media_id: return self.post_text(text, title, media_id=media_id) else: - frappe.log_error("Failed to upload media.", "LinkedIn Upload Error") + self.log_error("LinkedIn: Failed to upload media") def upload_image(self, media): media = get_file_path(media) diff --git a/erpnext/crm/doctype/social_media_post/social_media_post.py b/erpnext/crm/doctype/social_media_post/social_media_post.py index 2fd003e463b..55db29a627a 100644 --- a/erpnext/crm/doctype/social_media_post/social_media_post.py +++ b/erpnext/crm/doctype/social_media_post/social_media_post.py @@ -70,8 +70,7 @@ class SocialMediaPost(Document): except Exception: self.db_set("post_status", "Error") - title = _("Error while POSTING {0}").format(self.name) - frappe.log_error(message=frappe.get_traceback(), title=title) + self.log_error("Social posting failed") def process_scheduled_social_media_posts(): diff --git a/erpnext/e_commerce/api.py b/erpnext/e_commerce/api.py index 179829c2b74..bfada0faa7a 100644 --- a/erpnext/e_commerce/api.py +++ b/erpnext/e_commerce/api.py @@ -56,8 +56,7 @@ def get_product_filter_data(query_args=None): attribute_filters, field_filters, search_term=search, start=start, item_group=item_group ) except Exception: - traceback = frappe.get_traceback() - frappe.log_error(traceback, frappe._("Product Engine Error")) + frappe.log_error("Product query with filter failed") return {"exc": "Something went wrong!"} # discount filter data diff --git a/erpnext/e_commerce/redisearch_utils.py b/erpnext/e_commerce/redisearch_utils.py index f2dd796f2c5..61b4b9ee1f4 100644 --- a/erpnext/e_commerce/redisearch_utils.py +++ b/erpnext/e_commerce/redisearch_utils.py @@ -245,8 +245,7 @@ def get_fields_indexed(): def raise_redisearch_error(): "Create an Error Log and raise error." - traceback = frappe.get_traceback() - log = frappe.log_error(traceback, frappe._("Redisearch Error")) + log = frappe.log_error("Redisearch Error") log_link = frappe.utils.get_link_to_form("Error Log", log.name) frappe.throw( diff --git a/erpnext/erpnext_integrations/connectors/woocommerce_connection.py b/erpnext/erpnext_integrations/connectors/woocommerce_connection.py index 46a4d3c69e4..6d977e022ff 100644 --- a/erpnext/erpnext_integrations/connectors/woocommerce_connection.py +++ b/erpnext/erpnext_integrations/connectors/woocommerce_connection.py @@ -32,7 +32,7 @@ def order(*args, **kwargs): error_message = ( frappe.get_traceback() + "\n\n Request Data: \n" + json.loads(frappe.request.data).__str__() ) - frappe.log_error(error_message, "WooCommerce Error") + frappe.log_error("WooCommerce Error", error_message) raise diff --git a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py b/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py index e1972ae3d38..55517e48289 100644 --- a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py +++ b/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py @@ -107,7 +107,7 @@ class GoCardlessSettings(Document): return self.create_charge_on_gocardless() except Exception: - frappe.log_error(frappe.get_traceback()) + frappe.log_error("Gocardless payment reqeust failed") return { "redirect_to": frappe.redirect_to_message( _("Server Error"), @@ -163,21 +163,15 @@ class GoCardlessSettings(Document): or payment.status == "charged_back" ): self.integration_request.db_set("status", "Cancelled", update_modified=False) - frappe.log_error( - _("Payment Cancelled. Please check your GoCardless Account for more details"), - "GoCardless Payment Error", - ) + frappe.log_error("Gocardless payment cancelled") self.integration_request.db_set("error", payment.status, update_modified=False) else: self.integration_request.db_set("status", "Failed", update_modified=False) - frappe.log_error( - _("Payment Failed. Please check your GoCardless Account for more details"), - "GoCardless Payment Error", - ) + frappe.log_error("Gocardless payment failed") self.integration_request.db_set("error", payment.status, update_modified=False) except Exception as e: - frappe.log_error(e, "GoCardless Payment Error") + frappe.log_error("GoCardless Payment Error") if self.flags.status_changed_to == "Completed": status = "Completed" @@ -188,7 +182,7 @@ class GoCardlessSettings(Document): self.data.get("reference_doctype"), self.data.get("reference_docname") ).run_method("on_payment_authorized", self.flags.status_changed_to) except Exception: - frappe.log_error(frappe.get_traceback()) + frappe.log_error("Gocardless redirect failed") if custom_redirect_to: redirect_to = custom_redirect_to diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py b/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py index 78a598ce985..e3899807266 100644 --- a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py +++ b/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py @@ -152,7 +152,7 @@ def generate_stk_push(**kwargs): return response except Exception: - frappe.log_error(title=_("Mpesa Express Transaction Error")) + frappe.log_error("Mpesa Express Transaction Error") frappe.throw( _("Issue detected with Mpesa configuration, check the error logs for more details"), title=_("Mpesa Express Error"), @@ -203,7 +203,7 @@ def verify_transaction(**kwargs): integration_request.handle_success(transaction_response) except Exception: integration_request.handle_failure(transaction_response) - frappe.log_error(frappe.get_traceback()) + frappe.log_error("Mpesa: Failed to verify transaction") else: integration_request.handle_failure(transaction_response) @@ -275,7 +275,7 @@ def get_account_balance(request_payload): ) return response except Exception: - frappe.log_error(title=_("Account Balance Processing Error")) + frappe.log_error("Mpesa: Failed to get account balance") frappe.throw(_("Please check your configuration and try again"), title=_("Error")) @@ -315,7 +315,7 @@ def process_balance_info(**kwargs): except Exception: request.handle_failure(account_balance_response) frappe.log_error( - title=_("Mpesa Account Balance Processing Error"), message=account_balance_response + title="Mpesa Account Balance Processing Error", message=account_balance_response ) else: request.handle_failure(account_balance_response) diff --git a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_connector.py b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_connector.py index 625dd3110ea..38d69932f24 100644 --- a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_connector.py +++ b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_connector.py @@ -23,7 +23,7 @@ class PlaidConnector: def get_access_token(self, public_token): if public_token is None: - frappe.log_error(_("Public token is missing for this bank"), _("Plaid public token error")) + frappe.log_error("Plaid: Public token is missing") response = self.client.Item.public_token.exchange(public_token) access_token = response["access_token"] return access_token @@ -61,10 +61,10 @@ class PlaidConnector: try: response = self.client.LinkToken.create(token_request) except InvalidRequestError: - frappe.log_error(frappe.get_traceback(), _("Plaid invalid request error")) + frappe.log_error("Plaid: Invalid request error") frappe.msgprint(_("Please check your Plaid client ID and secret values")) except APIError as e: - frappe.log_error(frappe.get_traceback(), _("Plaid authentication error")) + frappe.log_error("Plaid: Authentication error") frappe.throw(_(str(e)), title=_("Authentication Failed")) else: return response["link_token"] @@ -81,7 +81,7 @@ class PlaidConnector: except requests.Timeout: pass except Exception as e: - frappe.log_error(frappe.get_traceback(), _("Plaid authentication error")) + frappe.log_error("Plaid: Authentication error") frappe.throw(_(str(e)), title=_("Authentication Failed")) def get_transactions(self, start_date, end_date, account_id=None): @@ -102,4 +102,4 @@ class PlaidConnector: except ItemError as e: raise e except Exception: - frappe.log_error(frappe.get_traceback(), _("Plaid transactions sync error")) + frappe.log_error("Plaid: Transactions sync error") diff --git a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.py b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.py index ce65f6c0ff7..62ea85fc5d2 100644 --- a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.py +++ b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.py @@ -54,7 +54,7 @@ def add_institution(token, response): ) bank.insert() except Exception: - frappe.log_error(frappe.get_traceback(), title=_("Plaid Link Error")) + frappe.log_error("Plaid Link Error") else: bank = frappe.get_doc("Bank", response["institution"]["name"]) bank.plaid_access_token = access_token @@ -113,7 +113,7 @@ def add_bank_accounts(response, bank, company): _("Bank account {0} already exists and could not be created again").format(account["name"]) ) except Exception: - frappe.log_error(frappe.get_traceback(), title=_("Plaid Link Error")) + frappe.log_error("Plaid Link Error") frappe.throw( _("There was an error creating Bank Account while linking with Plaid."), title=_("Plaid Link Failed"), @@ -135,7 +135,7 @@ def add_bank_accounts(response, bank, company): existing_account.save() result.append(existing_bank_account) except Exception: - frappe.log_error(frappe.get_traceback(), title=_("Plaid Link Error")) + frappe.log_error("Plaid Link Error") frappe.throw( _("There was an error updating Bank Account {} while linking with Plaid.").format( existing_bank_account diff --git a/erpnext/erpnext_integrations/exotel_integration.py b/erpnext/erpnext_integrations/exotel_integration.py index 522de9ead83..fd9f74e8c9b 100644 --- a/erpnext/erpnext_integrations/exotel_integration.py +++ b/erpnext/erpnext_integrations/exotel_integration.py @@ -1,6 +1,5 @@ import frappe import requests -from frappe import _ # api/method/erpnext.erpnext_integrations.exotel_integration.handle_incoming_call # api/method/erpnext.erpnext_integrations.exotel_integration.handle_end_call @@ -26,8 +25,7 @@ def handle_incoming_call(**kwargs): update_call_log(call_payload, call_log=call_log) except Exception as e: frappe.db.rollback() - frappe.log_error(title=_("Error in Exotel incoming call")) - frappe.db.commit() + exotel_settings.log_error("Error in Exotel incoming call") @frappe.whitelist(allow_guest=True) diff --git a/erpnext/erpnext_integrations/stripe_integration.py b/erpnext/erpnext_integrations/stripe_integration.py index b12adc1d3df..2d7e8a5d31e 100644 --- a/erpnext/erpnext_integrations/stripe_integration.py +++ b/erpnext/erpnext_integrations/stripe_integration.py @@ -22,7 +22,7 @@ def create_stripe_subscription(gateway_controller, data): return create_subscription_on_stripe(stripe_settings) except Exception: - frappe.log_error(frappe.get_traceback()) + stripe_settings.log_error("Unable to create Stripe subscription") return { "redirect_to": frappe.redirect_to_message( _("Server Error"), @@ -55,9 +55,9 @@ def create_subscription_on_stripe(stripe_settings): else: stripe_settings.integration_request.db_set("status", "Failed", update_modified=False) - frappe.log_error("Subscription N°: " + subscription.id, "Stripe Payment not completed") + frappe.log_error(f"Stripe Subscription ID {subscription.id}: Payment failed") except Exception: stripe_settings.integration_request.db_set("status", "Failed", update_modified=False) - frappe.log_error(frappe.get_traceback()) + stripe_settings.log_error("Unable to create Stripe subscription") return stripe_settings.finalize_request() diff --git a/erpnext/manufacturing/doctype/bom_update_log/bom_update_log.py b/erpnext/manufacturing/doctype/bom_update_log/bom_update_log.py index 139dcbcdd90..c0770fac90a 100644 --- a/erpnext/manufacturing/doctype/bom_update_log/bom_update_log.py +++ b/erpnext/manufacturing/doctype/bom_update_log/bom_update_log.py @@ -154,7 +154,7 @@ def run_bom_job( except Exception: frappe.db.rollback() - error_log = frappe.log_error(message=frappe.get_traceback(), title=_("BOM Update Tool Error")) + error_log = doc.log_error("BOM Update Tool Error") doc.db_set("status", "Failed") doc.db_set("error_log", error_log.name) diff --git a/erpnext/patches/v12_0/move_bank_account_swift_number_to_bank.py b/erpnext/patches/v12_0/move_bank_account_swift_number_to_bank.py index c069c24cfa5..671dfd116d2 100644 --- a/erpnext/patches/v12_0/move_bank_account_swift_number_to_bank.py +++ b/erpnext/patches/v12_0/move_bank_account_swift_number_to_bank.py @@ -17,7 +17,7 @@ def execute(): """ ) except Exception as e: - frappe.log_error(e, title="Patch Migration Failed") + frappe.log_error("Bank to Bank Account patch migration failed") frappe.reload_doc("accounts", "doctype", "bank_account") frappe.reload_doc("accounts", "doctype", "payment_request") diff --git a/erpnext/patches/v13_0/add_missing_fg_item_for_stock_entry.py b/erpnext/patches/v13_0/add_missing_fg_item_for_stock_entry.py index 517a14a8300..ddbb7fd0f1b 100644 --- a/erpnext/patches/v13_0/add_missing_fg_item_for_stock_entry.py +++ b/erpnext/patches/v13_0/add_missing_fg_item_for_stock_entry.py @@ -96,8 +96,7 @@ def repost_stock_entry(doc): make_sl_entries(sl_entries, True) except Exception: print(f"SLE entries not posted for the stock entry {doc.name}") - traceback = frappe.get_traceback() - frappe.log_error(traceback) + doc.log_error("Stock respost failed") def get_sle_for_target_warehouse(doc, sl_entries, finished_item_row): diff --git a/erpnext/patches/v13_0/convert_to_website_item_in_item_card_group_template.py b/erpnext/patches/v13_0/convert_to_website_item_in_item_card_group_template.py index 020521d5b95..1bac0fdbf0b 100644 --- a/erpnext/patches/v13_0/convert_to_website_item_in_item_card_group_template.py +++ b/erpnext/patches/v13_0/convert_to_website_item_in_item_card_group_template.py @@ -56,8 +56,5 @@ def make_new_website_item(item: str) -> Union[str, None]: web_item = make_website_item(doc) # returns [website_item.name, item_name] return web_item[0] except Exception: - title = f"{item}: Error while converting to Website Item " - frappe.log_error( - title + "for Item Card Group Template" + "\n\n" + frappe.get_traceback(), title=title - ) + doc.log_error("Website Item creation failed") return None diff --git a/erpnext/patches/v13_0/modify_invalid_gain_loss_gl_entries.py b/erpnext/patches/v13_0/modify_invalid_gain_loss_gl_entries.py index 492e0403ec4..6c64ef6559b 100644 --- a/erpnext/patches/v13_0/modify_invalid_gain_loss_gl_entries.py +++ b/erpnext/patches/v13_0/modify_invalid_gain_loss_gl_entries.py @@ -40,7 +40,10 @@ def execute(): ) if purchase_invoices + sales_invoices: - frappe.log_error(json.dumps(purchase_invoices + sales_invoices, indent=2), title="Patch Log") + frappe.log_error( + "Fix invalid gain / loss patch log", + message=json.dumps(purchase_invoices + sales_invoices, indent=2), + ) acc_frozen_upto = frappe.db.get_value("Accounts Settings", None, "acc_frozen_upto") if acc_frozen_upto: diff --git a/erpnext/patches/v14_0/rename_ongoing_status_in_sla_documents.py b/erpnext/patches/v14_0/rename_ongoing_status_in_sla_documents.py index 2eb6becb09a..8ea96abd30f 100644 --- a/erpnext/patches/v14_0/rename_ongoing_status_in_sla_documents.py +++ b/erpnext/patches/v14_0/rename_ongoing_status_in_sla_documents.py @@ -18,4 +18,4 @@ def execute(): ).run() except Exception: - frappe.log_error(title="Failed to Patch SLA Status") + frappe.log_error("Failed to Patch SLA Status") diff --git a/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py b/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py index 77c4d7c6ca3..34701c140d6 100644 --- a/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py +++ b/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py @@ -160,7 +160,7 @@ def get_file_content(file_name, zip_file_object): try: content = encoded_content.decode("utf-16") except UnicodeDecodeError as e: - frappe.log_error(message=e, title="UTF-16 encoding error for File Name: " + file_name) + frappe.log_error("UTF-16 encoding error for File Name: " + file_name) return content @@ -390,9 +390,7 @@ def create_purchase_invoice(supplier_name, file_name, args, name): return pi.name except Exception as e: frappe.db.set_value("Import Supplier Invoice", name, "status", "Error") - frappe.log_error( - message=e, title="Create Purchase Invoice: " + args.get("bill_no") + "File Name: " + file_name - ) + pi.log_error("Unable to create Puchase Invoice") return None diff --git a/erpnext/setup/doctype/company/company.py b/erpnext/setup/doctype/company/company.py index c11645822ff..9bde6e2c479 100644 --- a/erpnext/setup/doctype/company/company.py +++ b/erpnext/setup/doctype/company/company.py @@ -528,7 +528,7 @@ def install_country_fixtures(company, country): except ImportError: pass except Exception: - frappe.log_error() + frappe.log_error("Unable to set country fixtures") frappe.throw( _("Failed to setup defaults for country {0}. Please contact support.").format( frappe.bold(country) diff --git a/erpnext/setup/setup_wizard/operations/taxes_setup.py b/erpnext/setup/setup_wizard/operations/taxes_setup.py index 39dc7e33276..2f77dd6ae56 100644 --- a/erpnext/setup/setup_wizard/operations/taxes_setup.py +++ b/erpnext/setup/setup_wizard/operations/taxes_setup.py @@ -116,7 +116,7 @@ def update_regional_tax_settings(country, company): frappe.get_attr(module_name)(country, company) except Exception as e: # Log error and ignore if failed to setup regional tax settings - frappe.log_error() + frappe.log_error("Unable to setup regional tax settings") pass diff --git a/erpnext/setup/utils.py b/erpnext/setup/utils.py index 2200e6cd1df..e848dfebdcc 100644 --- a/erpnext/setup/utils.py +++ b/erpnext/setup/utils.py @@ -112,7 +112,7 @@ def get_exchange_rate(from_currency, to_currency, transaction_date=None, args=No cache.setex(name=key, time=21600, value=flt(value)) return flt(value) except Exception: - frappe.log_error(title="Get Exchange Rate") + frappe.log_error("Unable to fetch exchange rate") frappe.msgprint( _( "Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually" diff --git a/erpnext/stock/doctype/repost_item_valuation/repost_item_valuation.py b/erpnext/stock/doctype/repost_item_valuation/repost_item_valuation.py index eb0be460d8a..236b944c3ad 100644 --- a/erpnext/stock/doctype/repost_item_valuation/repost_item_valuation.py +++ b/erpnext/stock/doctype/repost_item_valuation/repost_item_valuation.py @@ -135,7 +135,7 @@ def repost(doc): except Exception: frappe.db.rollback() traceback = frappe.get_traceback() - frappe.log_error(traceback) + doc.log_error("Unable to repost item valuation") message = frappe.message_log.pop() if frappe.message_log else "" if traceback: diff --git a/erpnext/stock/reorder_item.py b/erpnext/stock/reorder_item.py index ee151b7517c..4763b472c23 100644 --- a/erpnext/stock/reorder_item.py +++ b/erpnext/stock/reorder_item.py @@ -136,14 +136,14 @@ def create_material_request(material_requests): mr_list = [] exceptions_list = [] - def _log_exception(): + def _log_exception(mr): if frappe.local.message_log: exceptions_list.extend(frappe.local.message_log) frappe.local.message_log = [] else: exceptions_list.append(frappe.get_traceback()) - frappe.log_error(frappe.get_traceback()) + mr.log_error("Unable to create material request") for request_type in material_requests: for company in material_requests[request_type]: @@ -207,7 +207,7 @@ def create_material_request(material_requests): mr_list.append(mr) except Exception: - _log_exception() + _log_exception(mr) if mr_list: if getattr(frappe.local, "reorder_email_notify", None) is None: diff --git a/erpnext/templates/pages/integrations/gocardless_checkout.py b/erpnext/templates/pages/integrations/gocardless_checkout.py index 280f67f16b9..655be52c55c 100644 --- a/erpnext/templates/pages/integrations/gocardless_checkout.py +++ b/erpnext/templates/pages/integrations/gocardless_checkout.py @@ -96,5 +96,5 @@ def check_mandate(data, reference_doctype, reference_docname): return {"redirect_to": redirect_flow.redirect_url} except Exception as e: - frappe.log_error(e, "GoCardless Payment Error") + frappe.log_error("GoCardless Payment Error") return {"redirect_to": "/integrations/payment-failed"} diff --git a/erpnext/templates/pages/integrations/gocardless_confirmation.py b/erpnext/templates/pages/integrations/gocardless_confirmation.py index cab532a5303..559aa4806d9 100644 --- a/erpnext/templates/pages/integrations/gocardless_confirmation.py +++ b/erpnext/templates/pages/integrations/gocardless_confirmation.py @@ -60,7 +60,7 @@ def confirm_payment(redirect_flow_id, reference_doctype, reference_docname): try: create_mandate(data) except Exception as e: - frappe.log_error(e, "GoCardless Mandate Registration Error") + frappe.log_error("GoCardless Mandate Registration Error") gateway_controller = get_gateway_controller(reference_docname) frappe.get_doc("GoCardless Settings", gateway_controller).create_payment_request(data) @@ -68,7 +68,7 @@ def confirm_payment(redirect_flow_id, reference_doctype, reference_docname): return {"redirect_to": confirmation_url} except Exception as e: - frappe.log_error(e, "GoCardless Payment Error") + frappe.log_error("GoCardless Payment Error") return {"redirect_to": "/integrations/payment-failed"} @@ -103,4 +103,4 @@ def create_mandate(data): ).insert(ignore_permissions=True) except Exception: - frappe.log_error(frappe.get_traceback()) + frappe.log_error("Gocardless: Unable to create mandate") diff --git a/erpnext/utilities/doctype/video/video.py b/erpnext/utilities/doctype/video/video.py index 330812dc275..a39d0a95ebf 100644 --- a/erpnext/utilities/doctype/video/video.py +++ b/erpnext/utilities/doctype/video/video.py @@ -36,8 +36,7 @@ class Video(Document): self.comment_count = video_stats.get("commentCount") except Exception: - title = "Failed to Update YouTube Statistics for Video: {0}".format(self.name) - frappe.log_error(title + "\n\n" + frappe.get_traceback(), title=title) + self.log_error("Unable to update YouTube statistics") def is_tracking_enabled(): @@ -109,8 +108,7 @@ def batch_update_youtube_data(): video_stats = video.items return video_stats except Exception: - title = "Failed to Update YouTube Statistics" - frappe.log_error(title + "\n\n" + frappe.get_traceback(), title=title) + frappe.log_error("Unable to update YouTube statistics") def prepare_and_set_data(video_list): video_ids = get_formatted_ids(video_list) diff --git a/erpnext/utilities/doctype/video_settings/video_settings.py b/erpnext/utilities/doctype/video_settings/video_settings.py index 97fbc41934b..9bc7972bb37 100644 --- a/erpnext/utilities/doctype/video_settings/video_settings.py +++ b/erpnext/utilities/doctype/video_settings/video_settings.py @@ -18,5 +18,5 @@ class VideoSettings(Document): build("youtube", "v3", developerKey=self.api_key) except Exception: title = _("Failed to Authenticate the API key.") - frappe.log_error(title + "\n\n" + frappe.get_traceback(), title=title) + self.log_error("Failed to authenticate API key") frappe.throw(title + " Please check the error logs.", title=_("Invalid Credentials"))