Hi Praveen, The notification and notifying objects are truncated because we did not change default attribute values before running test.
Following changes should be done before running test: 1) The field size of @No and @Ng tokens in `saLogStreamLogFileFormat` In default, the field-size value is 30. Means, the notification and notifying objects are limited to 30 characters. For long DN test, we should remove the <field-size>. E.g: change default "@No30" to "@No". 2) The fixed log record size - `saLogStreamFixedLogRecordSize` In default, its value is 200. A whole log record is limited to this number of characters. We should change it to 0, means variable log record size. 3) Max log record size - `logMaxLogrecsize` in class ` OpenSafLogConfig` In default, max log record size is limited to 1024 characters. We should change it to a bigger number. Max value is 65535. Example: # immcfg -a saLogStreamFixedLogRecordSize=0 -a saLogStreamLogFileFormat="@Cr @Ct @Nt @Ne6 @No @Ng \"@Cb\"" safLgStrCfg=saLogAlarm,safApp=safLogService # immcfg -a logMaxLogrecsize=65535 logConfig=1,safApp=safLogService We can consider to put these information into the ~/tests/ntfsv/README file. Regards, Vu > -----Original Message----- > From: praveen malviya [mailto:praveen.malv...@oracle.com] > Sent: Tuesday, August 9, 2016 6:46 PM > To: Vu Minh Nguyen <vu.m.ngu...@dektech.com.au>; 'minh chau' > <minh.c...@dektech.com.au>; 'Lennart Lund' <lennart.l...@ericsson.com> > Cc: opensaf-devel@lists.sourceforge.net > Subject: Re: [PATCH 1 of 1] ntfsv: refactor logging long dn notification > [#1585] > > Hi Vu, > > This patch is doing that. My question was any truncation being done from > log service after taking a long Dn notificaion from NTF. > > For example: When executed first ntf long dn test: ntftest 36 1 > > LOG service logs these notification in saLogAlarm_20160809_165614.log as: > 10 0x146920b67187c6f0 0x146920b67187c6f0 0x4001 > AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA > BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB "this is > additional text info" > 11 0x146920b67187c6f0 0x146920b67187c6f0 0x4001 AMF BLABLA > Component > AMF BLABLA Entity "this is additional text info" > > In the first notification above, notification and notifying objects are > truncated. Do we need to increase the size of log service record? > > Thanks, > Praveen > > On 05-Aug-16 8:40 AM, Vu Minh Nguyen wrote: > > Hi Praveen, > > > > Truncation is removed as LOG supports Long DN now. Means, NTF would > not get > > INVALID_PARAM if logging longdn-contained notifications. > > > > Regards, Vu > > > >> -----Original Message----- > >> From: praveen malviya [mailto:praveen.malv...@oracle.com] > >> Sent: Thursday, August 4, 2016 8:24 PM > >> To: Vu Minh Nguyen <vu.m.ngu...@dektech.com.au>; minh chau > >> <minh.c...@dektech.com.au>; Lennart Lund > <lennart.l...@ericsson.com> > >> Cc: opensaf-devel@lists.sourceforge.net > >> Subject: Re: [PATCH 1 of 1] ntfsv: refactor logging long dn notification > >> [#1585] > >> > >> Hi Vu, > >> > >> TWith this patch Ntf will not perform any truncation on long dn while > >> saflogging alrams.Is it with the log service (after supporting long dn) > >> also or log service is performing any truncation before logging? > >> > >> > >> Thanks, > >> Praveen > >> > >> On 22-Jul-16 4:46 PM, Vu Minh Nguyen wrote: > >>> osaf/services/saf/ntfsv/ntfs/NtfLogger.cc | 51 > > +++++++---------------------- > >> - > >>> 1 files changed, 13 insertions(+), 38 deletions(-) > >>> > >>> > >>> Remove the part of code that truncates the long DN. > >>> > >>> diff --git a/osaf/services/saf/ntfsv/ntfs/NtfLogger.cc > >> b/osaf/services/saf/ntfsv/ntfs/NtfLogger.cc > >>> --- a/osaf/services/saf/ntfsv/ntfs/NtfLogger.cc > >>> +++ b/osaf/services/saf/ntfsv/ntfs/NtfLogger.cc > >>> @@ -21,6 +21,7 @@ > >>> */ > >>> #include <sys/poll.h> > >>> > >>> +#include "osaf_utility.h" > >>> #include "saAis.h" > >>> #include "saLog.h" > >>> #include "NtfAdmin.hh" > >>> @@ -232,48 +233,22 @@ SaAisErrorT NtfLogger::logNotification(N > >>> notif->getNotificationId(), > >>> SA_LOG_RECORD_WRITE_ACK, > >>> &logRecord); > >>> - if (SA_AIS_OK != errorCode) { > >>> - LOG_NO("Failed to log an alarm or security alarm notification > > (%d)", > >> errorCode); > >>> - if (errorCode == SA_AIS_ERR_LIBRARY || errorCode == > >> SA_AIS_ERR_BAD_HANDLE) { > >>> - LOG_ER("Fatal error SA_AIS_ERR_LIBRARY or > >> SA_AIS_ERR_BAD_HANDLE; exiting (%d)...", errorCode); > >>> - exit(EXIT_FAILURE); > >>> - } else if (errorCode == SA_AIS_ERR_INVALID_PARAM) { > >>> - /* Retry to log truncated notificationObject/notifyingObject > > because > >>> - * LOG Service has not supported long dn in Opensaf 4.5 > >>> - */ > >>> - char short_dn[SA_MAX_UNEXTENDED_NAME_LENGTH]; > >>> - memset(&short_dn, 0, SA_MAX_UNEXTENDED_NAME_LENGTH); > >>> - SaNameT shortdn_notificationObject, shortdn_notifyingObject; > >>> - if (osaf_is_an_extended_name(ntfHeader->notificationObject)) { > >>> - strncpy(short_dn, osaf_extended_name_borrow(ntfHeader- > >>> notificationObject) > >>> - , SA_MAX_UNEXTENDED_NAME_LENGTH - 1); > >>> - osaf_extended_name_lend(short_dn, > > &shortdn_notificationObject); > >>> - logRecord.logHeader.ntfHdr.notificationObject = > >> &shortdn_notificationObject; > >>> - } > >>> - if (osaf_is_an_extended_name(ntfHeader->notifyingObject)) { > >>> - strncpy(short_dn, osaf_extended_name_borrow(ntfHeader- > >>> notifyingObject) > >>> - , SA_MAX_UNEXTENDED_NAME_LENGTH - 1); > >>> - osaf_extended_name_lend(short_dn, &shortdn_notifyingObject); > >>> - logRecord.logHeader.ntfHdr.notifyingObject = > >> &shortdn_notifyingObject; > >>> - } > >>> - if (short_dn[0] != '\0') { > >>> - LOG_NO("Retry to log the truncated > >> notificationObject/notifyingObject"); > >>> - if ((errorCode = saLogWriteLogAsync(alarmStreamHandle, > >>> - > > notif->getNotificationId(), > >>> - SA_LOG_RECORD_WRITE_ACK, > >>> - &logRecord)) != > > SA_AIS_OK) { > >>> - LOG_ER("Failed to log the truncated > >> notificationObject/notifyingObject (%d)" > >>> - , errorCode); > >>> - } > >>> - } > >>> - } > >>> - goto end; > >>> + switch (errorCode) { > >>> + case SA_AIS_OK: > >>> + break; > >>> + > >>> + /* LOGsv is busy. Put the notification to queue and re-send next > > time */ > >>> + case SA_AIS_ERR_TRY_AGAIN: > >>> + case SA_AIS_ERR_TIMEOUT: > >>> + TRACE("Failed to log notification (ret: %d). Try next time.", > >> errorCode); > >>> + break; > >>> + > >>> + default: > >>> + osaf_abort(errorCode); > >>> } > >>> } > >>> > >>> -end: > >>> TRACE_LEAVE(); > >>> - > >>> return errorCode; > >>> } > >>> > >>> > > ------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports. http://sdm.link/zohodev2dev _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel