Age | Commit message (Collapse) | Author |
|
* anders/diameter/service_info/OTP-10213:
Include transport-specific service info
Make service_info behave with nested item lists and non-atoms
Add 'connections' and 'peers' service_info
|
|
* anders/diameter/watchdog_events/OTP-10212:
Minor spec fix
Maintain watchdog states in service_info
Add events for watchdog state transitions
|
|
* anders/diameter/statistics/OTP-9608:
Improve statistics test cases
Statistics fixes
|
|
|
|
|
|
|
|
This would previously have resulted in all of a service's connections
going down, especially bad for a server.
|
|
To make for easier adding of future options. The record is only passed
into transport modules so the only compatibility issue is with these.
(No issue for diameter_{tcp,sctp} and unlikely but theoretically
possible for any other implementations, which probably don't exist at
this point.)
|
|
|
|
These provide alternates to 'transport' that group information, and
present statistics, per transport established transport connection and
peer Origin-Host instead of per reference returned by
diameter:add_transport/2.
|
|
|
|
|
|
Statistics are deleted as a consequence of diameter:remove_transport/2.
|
|
By returning it in a length 1 list from a handle_request callback.
This is the aforementioned roll your own.
|
|
Previously assumed it had arity 1, which is not necessarily
the case. Whether or not we should do this is probably debatable.
There should at least be a way for the user to roll their own.
|
|
|
|
The code assumed the common dictionary, which was just plain wrong.
|
|
|
|
|
|
In particular, not before the service process has a monitor on
the watchdog since the watchdog's exit reason is meaningful.
|
|
* anders/diameter/dict_error_identification/OTP-9639: (27 commits)
Update documentation
Improve base_rfc3588.dia formatting
Make typo fix backwards compatible
Fix base_rfc3588.dia typo
Check compiler dependencies in app suite
Move type definitions into diameter.erl
Fix interpretation of vendor id in @grouped
Add range checks on dictionary integers
Don't explicitly load inherited modules
Tweak diameter_make interface
Add format testcase to compiler suite
Add diameter_dict_util:format/1 for reconstructing a dictionary file
Make diameter_types usable with @codecs
Minor codegen tweaks
Remove unnecessary includes
Add compiler suite
Update app suite
Update codec suite
Vendor id fixes
No longer inherit common dictionary in relay dictionary
...
|
|
|
|
Base AVPs used for relaying and statistics are always taken from the
common dictionary. This is consistent with the way that Route-Record
is handled for one, and statistics should not rely on the dictionary
of any specific application.
|
|
This caused transport processes to be restarted even though
diameter:remove_transport/2 had removed their configuration from table.
|
|
In diameter_service:
make_packet -> make_request_packet
make_header -> make_request_header
make_reply_packet -> make_answer_packet
|
|
If a peer fsm process exits then the exit reason is received by
the service process in a 'DOWN' message. If the reason is the one
generated by diameter_peer_fsm:close/2, which is called to signal
a non-transport failure before the completion of capabilities exchange
(eg. receiving an unsuccessful CEA), then an event is sent to any
subscribers.
Also, tweak capabilities_cb return values for more informative
event data.
|
|
Simpler, no duplication of similar makefiles and makes for
better dependencies. (Aka, recursive make considered harmful.)
|