如何转换或恢复日志文件中无法读取的俄语字符?

如何转换或恢复日志文件中无法读取的俄语字符?

我试图调试从以前的员工那里继承的项目,但是当我打开日志文件时。

我看到以下内容:

form_1         | 2020-06-18T14:06:54.720238400Z 14:06:54.719 [DefaultMessageListenerContainer-2] INFO  s.v.w.f.s.form.FormValidationUtil - Результат валидации С
                                                                                                                                                                                  РѕСЂРјС‹ id=8 - valid=true, РѕСРёР±РєРё: {}
billing_1      | 2020-06-18T14:06:54.779316652Z 14:06:54.778 [DefaultMessageListenerContainer-1] INFO  s.v.w.b.s.s.b.PaynetEasyBillingService - send PaymentFormRequest PaymentFormRequestParamsDTO(mtId=5, orderDescription=Test transaction for card registration, firstName=Java, lastName=Machine, address1=XXX null, city=Tashkent, zipCode=100100, country=RU, phone=+998xxxxxxxxx, [email protected], amount=1.0, currency=UZS, ipAddress=213.230.114.222, redirectUrl=api/user/4/card/redirect?redirectUrl=/assets/card/wait-en.html, cardId=null, ownerId=null)
billing_1      | 2020-06-18T14:06:54.801865995Z 14:06:54.801 [DefaultMessageListenerContainer-1] INFO  s.v.wellt.psi.client.PSIJmsClient - send PaymentFormRequest PaymentFormRequestParamsDTO(mtId=5, orderDescription=Test transaction for card registration, firstName=Java, lastName=XXX, address1=XXX null, city=Tashkent, zipCode=100100, country=RU, phone=+998xxxxxxxxx, [email protected], amount=1.0, currency=UZS, ipAddress=213.230.114.222, redirectUrl=api/user/4/card/redirect?redirectUrl=/assets/card/wait-en.html, cardId=null, ownerId=null)
psi_1          | 2020-06-18T14:06:54.871934237Z 14:06:54.869 [DefaultMessageListenerContainer-1] INFO  s.v.w.p.s.controller.PSIJMSEndpoint - get PaymentFormRequest PaymentFormRequest(requestParams=PaymentFormRequestParamsDTO(mtId=5, orderDescription=Test transaction for card registration, firstName=Java, lastName=XXX, address1=XXX null, city=Tashkent, zipCode=100100, country=RU, phone=+998xxxxxxxxx, [email protected], amount=1.0, currency=UZS, ipAddress=213.230.114.222, redirectUrl=api/user/4/card/redirect?redirectUrl=/assets/card/wait-en.html, cardId=null, ownerId=null))
psi_1          | 2020-06-18T14:06:54.899799516Z 14:06:54.881 [DefaultMessageListenerContainer-1] INFO  jmsLogger - ОтправлСРµС‚СЃС Р·Р°РїСЂРѕСЃ платежной С
                                                                                                                                                                           РѕСЂРјС‹ РґР»С [mtId=5]:[PaymentFormRequestParamsDTO(mtId=5, orderDescription=Test transaction for card registration, firstName=Java, lastName=XXX, address1=XXX null, city=Tashkent, zipCode=100100, country=RU, phone=+998xxxxxxxxx, [email protected], amount=1.0, currency=UZS, ipAddress=213.230.114.222, redirectUrl=api/user/4/card/redirect?redirectUrl=/assets/card/wait-en.html, cardId=null, ownerId=null)]
logs_1         | 2020-06-18T14:06:54.904830542Z 14:06:54.904 [DefaultMessageListenerContainer-2] INFO  s.v.w.l.s.mongo.MongoLogService - РЎРѕС
ранСем запись журнала СЃ маркером PSI_REQUEST_SEND
psi_1          | 2020-06-18T14:06:55.790176947Z 14:06:55.789 [DefaultMessageListenerContainer-1] WARN  s.v.w.p.s.s.r.PaynetEasyResponseProcessor - РџСЂРё проверке РѕСРёР±РѕРє Сѓ ответа РЅР° запрос 00000000-0000-0000-0000-0000024efbff РІС‹Свлена РЅРµРёР·РІРµСЃС‚РЅР°С РѕСРёР±РєР°:15
psi_1          | 2020-06-18T14:06:55.791907138Z 14:06:55.790 [DefaultMessageListenerContainer-1] INFO  jmsLogger - Получена РѕСРёР±РєР° РІ ответе РЅР° запрос РїРѕР»СѓС‡РµРЅРёС РїР»Р°С‚РµР¶РЅРѕР№ С
                                                                                                                                                                                                                        РѕСЂРјС‹ РґР»С СЂРµРіРёСЃС‚СЂР°С†РёРё карты [cardId=null] РїРѕ pre-auth транзакции[preauthId=5]:[request serial number="00000000-0000-0000-0000-0000024efbff", error code=15, message="unspecified_ps_error"]
logs_1         | 2020-06-18T14:06:55.794118210Z 14:06:55.793 [DefaultMessageListenerContainer-3] INFO  s.v.w.l.s.mongo.MongoLogService - РЎРѕС
ранСем запись журнала СЃ маркером PSI_RESPONSE_ERROR
billing_1      | 2020-06-18T14:06:55.832082731Z 14:06:55.831 [DefaultMessageListenerContainer-1] WARN  s.v.w.b.s.s.b.PaynetEasyBillingService - РџСЂРёСла РѕСРёР±РєР° РѕС‚ РџРЎ РїСЂРё запросе url С
                                                                                                                                                                                                             РѕСЂРјС‹ РґР»С СЂРµРіРёСЃС‚СЂР°С†РёРё карты
billing_1      | 2020-06-18T14:06:55.832254887Z xxx.billing.model.exception.PaymentException: null
billing_1      | 2020-06-18T14:06:55.832307593Z    at xxx.psi.client.PSIJmsClient.getFormUrl(PSIJmsClient.java:56)
billing_1      | 2020-06-18T14:06:55.832350492Z    at xxx.psi.client.PSIJmsClient$$FastClassBySpringCGLIB$$a2c2446b.invoke(<generated>)
billing_1      | 2020-06-18T14:06:55.832361923Z    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
billing_1      | 2020-06-18T14:06:55.832419950Z    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:738)
billing_1      | 2020-06-18T14:06:55.832462116Z    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
billing_1      | 2020-06-18T14:06:55.832473177Z    at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
billing_1      | 2020-06-18T14:06:55.832525011Z    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)
billing_1      | 2020-06-18T14:06:55.832565306Z    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
billing_1      | 2020-06-18T14:06:55.832575955Z    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
billing_1      | 2020-06-18T14:06:55.832605009Z    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:673)
billing_1      | 2020-06-18T14:06:55.832648107Z    at xxx.psi.client.PSIJmsClient$$EnhancerBySpringCGLIB$$79d60390.getFormUrl(<generated>)
billing_1      | 2020-06-18T14:06:55.832689483Z    at xxx.billing.service.service.billing.PaynetEasyBillingService.getRegisterCardFormUrl(PaynetEasyBillingService.java:292)
billing_1      | 2020-06-18T14:06:55.832699161Z    at xxx.billing.service.service.billing.PaynetEasyBillingService$$FastClassBySpringCGLIB$$b78aac2e.invoke(<generated>)
billing_1      | 2020-06-18T14:06:55.832703109Z    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
billing_1      | 2020-06-18T14:06:55.832706545Z    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:738)
billing_1      | 2020-06-18T14:06:55.832721422Z    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
billing_1      | 2020-06-18T14:06:55.832725950Z    at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
billing_1      | 2020-06-18T14:06:55.832729397Z    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)
billing_1      | 2020-06-18T14:06:55.832732732Z    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
billing_1      | 2020-06-18T14:06:55.832736990Z    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
billing_1      | 2020-06-18T14:06:55.832740316Z    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:673)
billing_1      | 2020-06-18T14:06:55.832743592Z    at xxx.billing.service.service.billing.PaynetEasyBillingService$$EnhancerBySpringCGLIB$$78a0acb9.getRegisterCardFormUrl(<generated>)
billing_1      | 2020-06-18T14:06:55.832747560Z    at xxx.billing.service.controller.BillingMainJMSEndpoint.getRegisterCardFormUrl(BillingMainJMSEndpoint.java:117)
billing_1      | 2020-06-18T14:06:55.832751307Z    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
billing_1      | 2020-06-18T14:06:55.832754944Z    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
billing_1      | 2020-06-18T14:06:55.832758860Z    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
billing_1      | 2020-06-18T14:06:55.832762066Z    at java.lang.reflect.Method.invoke(Method.java:498)
billing_1      | 2020-06-18T14:06:55.832765142Z    at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:180)
billing_1      | 2020-06-18T14:06:55.832768378Z    at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:112)
billing_1      | 2020-06-18T14:06:55.832772055Z    at org.springframework.jms.listener.adapter.MessagingMessageListenerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:104)
billing_1      | 2020-06-18T14:06:55.832775992Z    at org.springframework.jms.listener.adapter.MessagingMessageListenerAdapter.onMessage(MessagingMessageListenerAdapter.java:69)
billing_1      | 2020-06-18T14:06:55.832779288Z    at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:721)
billing_1      | 2020-06-18T14:06:55.832782614Z    at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:681)
billing_1      | 2020-06-18T14:06:55.832785929Z    at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:651)
billing_1      | 2020-06-18T14:06:55.832790008Z    at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:317)
billing_1      | 2020-06-18T14:06:55.832793414Z    at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:255)
billing_1      | 2020-06-18T14:06:55.832796770Z    at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1166)
billing_1      | 2020-06-18T14:06:55.832803412Z    at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1158)
billing_1      | 2020-06-18T14:06:55.832806838Z    at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1055)
billing_1      | 2020-06-18T14:06:55.832810204Z    at java.lang.Thread.run(Thread.java:748)

如何转换或恢复日志文件中无法读取的俄语字符,以便我了解项目出了什么问题?

答案1

数据似乎是双重编码的。如果你将它们从 UTF-8 转换为 CP1251 并解释为 UTF-8,它们就开始变得有意义了:

$ echo При проверке | iconv -f utf8 -t cp1251
При проверке

相关内容