Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
X
xyqb-user2
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
head_group
xyqb-user2
Commits
4b28d3b2
Commit
4b28d3b2
authored
Mar 23, 2022
by
李健华
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/risk-2022-03-23' into 'master'
去掉lkb上报 See merge request
!53
parents
4bd490fa
7ef6ada5
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
92 additions
and
92 deletions
+92
-92
KinesisRegisteredEventListener.java
...quantgroup/xyqb/event/KinesisRegisteredEventListener.java
+92
-92
No files found.
src/main/java/cn/quantgroup/xyqb/event/KinesisRegisteredEventListener.java
View file @
4b28d3b2
package
cn
.
quantgroup
.
xyqb
.
event
;
//
package cn.quantgroup.xyqb.event;
//
import
java.io.UnsupportedEncodingException
;
//
import java.io.UnsupportedEncodingException;
//
import
org.apache.commons.lang3.exception.ExceptionUtils
;
//
import org.apache.commons.lang3.exception.ExceptionUtils;
import
org.springframework.context.ApplicationListener
;
//
import org.springframework.context.ApplicationListener;
import
org.springframework.stereotype.Component
;
//
import org.springframework.stereotype.Component;
//
import
com.amazonaws.services.kinesis.producer.UserRecordResult
;
//
import com.amazonaws.services.kinesis.producer.UserRecordResult;
import
com.fasterxml.jackson.core.JsonProcessingException
;
//
import com.fasterxml.jackson.core.JsonProcessingException;
import
com.google.common.util.concurrent.FutureCallback
;
//
import com.google.common.util.concurrent.FutureCallback;
import
com.google.common.util.concurrent.Futures
;
//
import com.google.common.util.concurrent.Futures;
import
com.google.common.util.concurrent.ListenableFuture
;
//
import com.google.common.util.concurrent.ListenableFuture;
//
import
cn.qg.ec.kinesis.EnvironmentConfig
;
//
import cn.qg.ec.kinesis.EnvironmentConfig;
import
cn.qg.ec.kinesis.KinesisProducerClient
;
//
import cn.qg.ec.kinesis.KinesisProducerClient;
import
cn.qg.ec.model.user.base.UserBaseDetailEvent
;
//
import cn.qg.ec.model.user.base.UserBaseDetailEvent;
import
cn.quantgroup.tech.util.TechEnvironment
;
//
import cn.quantgroup.tech.util.TechEnvironment;
import
cn.quantgroup.xyqb.entity.User
;
//
import cn.quantgroup.xyqb.entity.User;
import
cn.quantgroup.xyqb.exception.PushUserToLkbException
;
//
import cn.quantgroup.xyqb.exception.PushUserToLkbException;
import
cn.quantgroup.xyqb.model.UserRegisterParam
;
//
import cn.quantgroup.xyqb.model.UserRegisterParam;
import
cn.quantgroup.xyqb.util.JsonUtil
;
//
import cn.quantgroup.xyqb.util.JsonUtil;
import
lombok.extern.slf4j.Slf4j
;
//
import lombok.extern.slf4j.Slf4j;
//
/**
/
//
**
* 注册成功之后,用户分群数据上报
//
* 注册成功之后,用户分群数据上报
* http://confluence.quantgroup.cn/pages/viewpage.action?pageId=34832018
//
* http://confluence.quantgroup.cn/pages/viewpage.action?pageId=34832018
* http://confluence.quantgroup.cn/pages/viewpage.action?pageId=41784208
//
* http://confluence.quantgroup.cn/pages/viewpage.action?pageId=41784208
* http://confluence.quantgroup.cn/pages/viewpage.action?pageId=34818640
//
* http://confluence.quantgroup.cn/pages/viewpage.action?pageId=34818640
* @author yutong
//
* @author yutong
*/
//
*/
@Slf4j
//
@Slf4j
//@Component
//@Component
public
class
KinesisRegisteredEventListener
implements
ApplicationListener
<
RegisterEvent
>
{
//public class KinesisRegisteredEventListener implements ApplicationListener<RegisterEvent> {
//
@Override
// @Override
public
void
onApplicationEvent
(
RegisterEvent
event
)
{
// public void onApplicationEvent(RegisterEvent event) {
UserRegisterParam
userRegisterParam
=
event
.
getUserRegisterParam
();
// UserRegisterParam userRegisterParam = event.getUserRegisterParam();
User
user
=
userRegisterParam
.
getUser
();
// User user = userRegisterParam.getUser();
//
log
.
info
(
"[KinesisRegistered] 用户分群数据上报准备, userId:{}, registeredFrom:{}"
,
user
.
getId
(),
user
.
getRegisteredFrom
());
// log.info("[KinesisRegistered] 用户分群数据上报准备, userId:{}, registeredFrom:{}", user.getId(), user.getRegisteredFrom());
sendRecord
(
user
);
// sendRecord(user);
}
// }
//
private
void
sendRecord
(
User
user
)
{
// private void sendRecord(User user) {
// EnvironmentConfig.DEV 环境变量配置
// // EnvironmentConfig.DEV 环境变量配置
KinesisProducerClient
kinesisProducerClient
=
new
KinesisProducerClient
(
// KinesisProducerClient kinesisProducerClient = new KinesisProducerClient(
TechEnvironment
.
isPro
()
?
EnvironmentConfig
.
PROD
:
EnvironmentConfig
.
DEV
);
// TechEnvironment.isPro() ? EnvironmentConfig.PROD : EnvironmentConfig.DEV);
//
// 用户登录事件发送
// // 用户登录事件发送
//// UserBaseDetailEvent regEvent = UserBaseDetailEvent
//// .builder()
//// .channel(1L)
//// .hashPhoneNo("*********")
//// .businessEventBaseInfo(BusinessEventBaseInfo
//// .builder()
//// .channel("***")
//// .deviceId("***")
//// .ip("***")
//// .userUuid("***")
//// .build())
//// .subEventType(UserBaseDetailEvent.SubEventType.REGISTER)
//// .build();
// UserBaseDetailEvent regEvent = UserBaseDetailEvent
// UserBaseDetailEvent regEvent = UserBaseDetailEvent
// .builder()
// .builder()
// .channel(1L)
// .userId(String.valueOf(user.getId()))
// .hashPhoneNo("*********")
// .userUuid(user.getUuid())
// .businessEventBaseInfo(BusinessEventBaseInfo
// .builder()
// .channel("***")
// .deviceId("***")
// .ip("***")
// .userUuid("***")
// .build())
// .subEventType(UserBaseDetailEvent.SubEventType.REGISTER)
// .subEventType(UserBaseDetailEvent.SubEventType.REGISTER)
// .build();
// .build();
UserBaseDetailEvent
regEvent
=
UserBaseDetailEvent
// regEvent.setRegisterChannel(user.getRegisteredFrom().intValue());
.
builder
()
// regEvent.setRegisterTime(user.getCreatedAt().getTime());
.
userId
(
String
.
valueOf
(
user
.
getId
()))
//
.
userUuid
(
user
.
getUuid
())
// try {
.
subEventType
(
UserBaseDetailEvent
.
SubEventType
.
REGISTER
)
// ListenableFuture<UserRecordResult> listenableFuture = kinesisProducerClient.SendRecord(regEvent);
.
build
();
// Futures.addCallback(listenableFuture, Callback);
regEvent
.
setRegisterChannel
(
user
.
getRegisteredFrom
().
intValue
());
// log.info("[KinesisRegistered] 用户分群数据上报发送, regEvent:{}", JsonUtil.toJson(regEvent));
regEvent
.
setRegisterTime
(
user
.
getCreatedAt
().
getTime
());
// } catch (UnsupportedEncodingException | JsonProcessingException e) {
// log.error("[KinesisRegistered]用户分群数据上报出错, e:{}", e);
try
{
// throw new PushUserToLkbException("用户分群数据上报出错");
ListenableFuture
<
UserRecordResult
>
listenableFuture
=
kinesisProducerClient
.
SendRecord
(
regEvent
);
// }
Futures
.
addCallback
(
listenableFuture
,
Callback
);
// }
log
.
info
(
"[KinesisRegistered] 用户分群数据上报发送, regEvent:{}"
,
JsonUtil
.
toJson
(
regEvent
));
//
}
catch
(
UnsupportedEncodingException
|
JsonProcessingException
e
)
{
// // 异步响应结果 如果发送失败,发送方需要进行重试发送
log
.
error
(
"[KinesisRegistered]用户分群数据上报出错, e:{}"
,
e
);
// FutureCallback<UserRecordResult> Callback = new FutureCallback<UserRecordResult>() {
throw
new
PushUserToLkbException
(
"用户分群数据上报出错"
);
// @Override
}
// public void onFailure(Throwable t) {
}
// /* Analyze and respond to the failure */
// log.error(t.getMessage(), t);
// 异步响应结果 如果发送失败,发送方需要进行重试发送
// log.error("[KinesisRegistered] 用户分群数据上报失败, Throwable:{}", ExceptionUtils.getStackTrace(t));
FutureCallback
<
UserRecordResult
>
Callback
=
new
FutureCallback
<
UserRecordResult
>()
{
// }
@Override
//
public
void
onFailure
(
Throwable
t
)
{
// @Override
/* Analyze and respond to the failure */
// public void onSuccess(UserRecordResult result) {
log
.
error
(
t
.
getMessage
(),
t
);
// log.info("[KinesisRegistered] 用户分群数据上报成功, result:{}", result.toString());
log
.
error
(
"[KinesisRegistered] 用户分群数据上报失败, Throwable:{}"
,
ExceptionUtils
.
getStackTrace
(
t
));
// }
}
// };
//}
@Override
public
void
onSuccess
(
UserRecordResult
result
)
{
log
.
info
(
"[KinesisRegistered] 用户分群数据上报成功, result:{}"
,
result
.
toString
());
}
};
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment