@@ -165,10 +165,13 @@ waiting_ip(enter, _OldState, _Data) ->
165
165
waiting_ip (state_timeout , check_ip , Data ) ->
166
166
case grisp_connect_utils :check_inet_ipv4 () of
167
167
{ok , IP } ->
168
- ? LOG_INFO (#{event => checked_ip , ip => IP }),
168
+ ? LOG_DEBUG (#{description => ? FORMAT (" IP Address available: ~s " ,
169
+ [format_ipv4 (IP )]),
170
+ event => checked_ip , ip => format_ipv4 (IP )}),
169
171
{next_state , connecting , Data };
170
172
invalid ->
171
- ? LOG_DEBUG (#{event => waiting_ip }),
173
+ ? LOG_DEBUG (#{description => <<" Waiting for an IP address do connect to grisp.io" >>,
174
+ event => waiting_ip }),
172
175
{keep_state_and_data , [{state_timeout , 1000 , check_ip }]}
173
176
end ;
174
177
? HANDLE_COMMON .
@@ -179,14 +182,14 @@ connecting(enter, _OldState, #data{retry_count = RetryCount}) ->
179
182
? LOG_DEBUG (" Scheduling connection attempt in ~w ms" , [Delay ]),
180
183
{keep_state_and_data , [{state_timeout , Delay , connect }]};
181
184
connecting (state_timeout , connect , Data = # data {conn = undefined }) ->
182
- ? LOG_INFO (#{description => <<" Connecting to grisp.io" >>,
185
+ ? LOG_INFO (#{description => <<" Connecting to grisp.io ... " >>,
183
186
event => connecting }),
184
187
case conn_start (Data ) of
185
188
{ok , Data2 } ->
186
189
{keep_state , Data2 , [{state_timeout , ? CONNECT_TIMEOUT , timeout }]};
187
190
{error , Reason } ->
188
- ? LOG_WARNING (" Failed to connect to grisp.io: ~p " , [Reason ],
189
- #{ event => connection_failed , reason => Reason }),
191
+ ? LOG_WARNING (#{ description => ? FORMAT ( " Failed to connect to grisp.io: ~p " , [Reason ]) ,
192
+ event => connection_failed , reason => Reason }),
190
193
reconnect (Data , Reason )
191
194
end ;
192
195
connecting (state_timeout , timeout , Data ) ->
@@ -237,11 +240,13 @@ handle_common(info, reboot, _, _) ->
237
240
init :stop (),
238
241
keep_state_and_data ;
239
242
handle_common (info , {'EXIT' , Conn , Reason }, _State , Data = # data {conn = Conn }) ->
240
- % The connection process died
241
- ? LOG_WARNING (#{description =>
242
- ? FORMAT (" The connection to grisp.io died: ~p " , [Reason ]),
243
- event => connection_failed , reason => Reason }),
244
- reconnect (conn_died (Data ), Reason );
243
+ RealReason = case Reason of
244
+ {shutdown , R } -> R ;
245
+ R -> R
246
+ end ,
247
+ ? LOG_WARNING (#{description => ? FORMAT (" Connection to grisp.io terminated: ~p " , [RealReason ]),
248
+ event => connection_failed , reason => RealReason }),
249
+ reconnect (conn_died (Data ), RealReason );
245
250
handle_common (info , {'EXIT' , _Conn , _Reason }, _State , _Data ) ->
246
251
% Ignore any EXIT from past jarl connections
247
252
keep_state_and_data ;
@@ -253,11 +258,9 @@ handle_common(cast, Cast, _, _) ->
253
258
error ({unexpected_cast , Cast });
254
259
handle_common ({call , _ }, Call , _ , _ ) ->
255
260
error ({unexpected_call , Call });
256
- handle_common (info , Info , State , Data ) ->
257
- ? LOG_ERROR (#{event => unexpected_info ,
258
- info => Info ,
259
- state => State ,
260
- data => Data }),
261
+ handle_common (info , Info , State , _Data ) ->
262
+ ? LOG_WARNING (#{description => <<" Unexpected message" >>,
263
+ event => unexpected_info , info => Info , state => State }),
261
264
keep_state_and_data .
262
265
263
266
@@ -278,6 +281,9 @@ as_bin(Binary) when is_binary(Binary) -> Binary;
278
281
as_bin (List ) when is_list (List ) -> list_to_binary (List );
279
282
as_bin (Atom ) when is_atom (Atom ) -> atom_to_binary (Atom ).
280
283
284
+ format_ipv4 ({A , B , C , D }) ->
285
+ ? FORMAT (" ~w .~w .~w .~w " , [A , B , C , D ]).
286
+
281
287
handle_connection_message (_Data , {response , _Result , #{on_result := undefined }}) ->
282
288
keep_state_and_data ;
283
289
handle_connection_message (Data , {response , Result , #{on_result := OnResult }}) ->
0 commit comments