fix agent

This commit is contained in:
anlicheng 2025-05-07 14:29:45 +08:00
parent 6259eb20e7
commit 82d6c3782f

View File

@ -200,7 +200,8 @@ handle_info({timeout, _, create_transport}, State = #state{status = ?STATE_DENIE
{noreply, State#state{status = ?STATE_CONNECTING, transport_pid = TransportPid}}; {noreply, State#state{status = ?STATE_CONNECTING, transport_pid = TransportPid}};
handle_info({connect_reply, Reply}, State = #state{status = ?STATE_CONNECTING, transport_pid = TransportPid}) -> %%
handle_info({connect_reply, Reply}, State = #state{status = ?STATE_CONNECTING, transport_pid = TransportPid}) when is_pid(TransportPid) ->
case Reply of case Reply of
ok -> ok ->
efka_transport:auth_request(TransportPid, 5000), efka_transport:auth_request(TransportPid, 5000),
@ -211,7 +212,8 @@ handle_info({connect_reply, Reply}, State = #state{status = ?STATE_CONNECTING, t
{noreply, ?STATE_DENIED, State#state{status = ?STATE_DENIED}} {noreply, ?STATE_DENIED, State#state{status = ?STATE_DENIED}}
end; end;
handle_info({auth_reply, {ok, ReplyBin}}, State = #state{status = ?STATE_AUTH, transport_pid = TransportPid}) -> %% auth回复
handle_info({auth_reply, {ok, ReplyBin}}, State = #state{status = ?STATE_AUTH, transport_pid = TransportPid}) when is_pid(TransportPid) ->
#auth_reply{code = Code, message = Message, repository_url = RepositoryUrl} = message_pb:decode_msg(ReplyBin, auth_reply), #auth_reply{code = Code, message = Message, repository_url = RepositoryUrl} = message_pb:decode_msg(ReplyBin, auth_reply),
case Code of case Code of
0 -> 0 ->
@ -372,7 +374,7 @@ handle_info({server_push_message, PacketId, <<16:8, Directive/binary>>}, State =
%% transport进程退出 %% transport进程退出
handle_info({'EXIT', TransportPid, Reason}, State = #state{transport_pid = TransportPid}) -> handle_info({'EXIT', TransportPid, Reason}, State = #state{transport_pid = TransportPid}) ->
efka_logger:debug("[efka_agent] transport pid: ~p, exit with reason: ~p", [TransportPid, Reason]), efka_logger:debug("[efka_agent] transport pid: ~p, exit with reason: ~p", [TransportPid, Reason]),
erlang:start_timer(500000, self(), create_transport), erlang:start_timer(5000, self(), create_transport),
{noreply, State#state{transport_pid = undefined, status = ?STATE_DENIED}}; {noreply, State#state{transport_pid = undefined, status = ?STATE_DENIED}};
handle_info(_Info, State = #state{}) -> handle_info(_Info, State = #state{}) ->