A/B test | Sending two variations of part of an email, such as subject lines, From names, and sections to different audiences to see which performs better. |
activities | Actions the system performs as part of a step in an automation. |
activities | The things that happen after a subscriber enters a journey and travels down its paths, such as sending messages and updating subscriber data in the system. |
AMPscript | Salesforce Marketing Cloud’s proprietary scripting language. You use it mainly to customize and automate the content in your marketing messages. |
app switcher | The toolbar in Salesforce Marketing Cloud that users use to navigate between apps. It appears when you pause your mouse pointer over the Salesforce Marketing Cloud logo. |
attribute group | A group of related data that you keep about your contacts. |
audience | The group of contacts who receive a message. In the strictest sense, an audience is a data extension created by Audience Builder, but the term is sometimes used more generically. |
automation | A program that runs on a schedule. |
beacon | A piece of hardware that uses Bluetooth technology to detect when a subscriber’s mobile device is nearby. |
bounce | Emails that were returned to you undelivered. It might not be worth continuing to maintain information about subscribers who bounce. |
business unit | A sub-account to your main parent account. For example, you might have multiple business units to represent different departments in your company, sister companies owned by the same parent company, or different locations of a retail corporation. |
campaign | A set of related marketing activities, such as a series of emails, text messages, and websites related to one another (for example, a President’s Day sale). |
canvas | The right side of the screen, below the toolbars. Several apps in Marketing Cloud use a canvas to be your work space in that app. |
cardinality | The relationship between two database tables. If each record in one table has a corresponding record in another table, the cardinality is one-to-one. Alternately, if each record in one table has any number of corresponding records in the second table, the cardinality is one-to-many. |
channel | A group of apps, all available from the same menu in the app switcher. |
clickthrough rate, or CTR | The percentage of people who were sent an email message and who went on to click an email in that message. |
collection | Similar to a folder that you create on your computer’s hard drive to contain related files, a collection is a place to pull together related text, images, and other content in the CloudPages app. |
contact | A person about whom you collect information. A contact is not necessarily a subscriber, who has given you permission to send them messages. |
content block | A tool in Marketing Cloud that lets you create a reusable block of content of a message. A content block might contain text, images, or multimedia content. |
customer journey | Customers’ total experience with your brand. |
customer key | A unique value that you assign to a piece of content and then use to refer to the content from API scripts that you write. |
data extension | Marketing Cloud’s proprietary name for a relational database table. |
delivery profile | The IP address from which the email is sent, as well as the header and footer. |
dynamic content | A section in an email where one of several different pieces of content may appear, depending on the attributes of the subscriber. |
email blast | An imprecise group message with no targeting or personalization. |
email service provider | A delivery mechanism for your email marketing efforts. May include tools to assist with design and execution of complex email programs. |
engaging | Communicating with the community on social networks, especially by responding to questions or complaints. |
entry source | Something that feeds subscribers into a journey, such as an audience that starts a subscriber in a journey as soon as the subscriber joins the audience. |
geofencing | Defining a region within which you will send a message, and then identifying subscribers who enter that region by using their mobile device. |
group | A subset of a subscriber list based on either a data filter or a number of randomly selected subscribers. You use groups with the subscriber-and-list data model, not the relational data model. |
IP warm | A period of methodically controlled sending from an IP address to establish a good reputation with Internet Service Providers (ISPs). |
join | Merging multiple branches of a journey. |
journey | A path for a subscriber to move through, where different branches can be followed depending on actions (or inactions) of the subscriber. |
journey | A process flow that controls how and when Marketing Cloud sends messages to your subscribers. |
keyword | The word a subscriber texts to your shortcode. |
landing page | A web page with a special objective that stands apart from the rest of your corporate website |
listening | Monitoring the discussion of your brand or industry on social media without necessarily contributing to the discussion. |
lookalike audience | A group of social media users who have things in common with your current customers. |
marketing send | A message whose primary purpose is to promote your business. |
microsite | A tool for publishing web page outside the larger context of your corporate web presence. |
MMS | Multimedia Messaging Service. Similar to SMS messages but can include images, sound, and video and has no character limit. |
mobile-originated campaigns | A mobile marketing campaign in which you publish a short code and wait to see who texts you. |
mobile-terminated campaigns | A mobile marketing message that you send to a subscriber’s mobile device. |
one-to-many marketing messages | Messages to an entire list of customers, such as a monthly newsletter. |
one-to-one marketing messages | Messages to just one customer at a time, such as a thank-you message after an order. |
open rate | The percentage of people who open an email. |
persona | Composite, fictional characters that marketers create based on information about the actual client base. |
personalization | A simple tool to add subscriber-specific data, such as a first name, to the content of a messages. |
personalized URL | Also called PURL (pronounced “pearl”). A URL that includes a variable that the system replaced with a subscriber-specific value so that each subscriber who clicks the link goes to a personalized web page. |
preference attributes | When using the subscriber-and-list data model, preference attributes contain yes/no choices that subscribers communicate to you about how they want to hear from you. |
preference center | A website where subscribers can update the information that you have about them, including their subscriptions to your different types of messages. |
preheader text | Any text that appears visually above the header in the body of your email. |
preview text | A snippet of copy from the body of your email that appears below the sender name and subject line in your subscriber’s inbox. |
profile attributes | When using the subscriber-and-list data model, profile attributes contain demographic data about the subscriber. |
profile center | For each subscriber, Marketing Cloud automatically generates a web page that you can link to in the footer of your email. When subscribers click the link, they go to a form where they can update their attribute values and change the lists to which they are subscribed.. |
proximity | How close two words must be in the same post to meet the criteria of your topic profile. |
publishing | Initiating a discussion on social media by posting original content. |
real time | Actions that occur immediately following another action, such as when a customer makes a purchase and receives a confirmation email immediately. |
relational data model | An approach to storing data in Marketing Cloud in which data is stored in relational database tables called data extensions. |
rendering | How an email looks in different contexts: Different email applications, operating systems, screen sizes, and other factors affect how an email renders. |
role | Set of permissions assigned to a group of users that perform a specific function. |
send classification | The tool you use to categorize email content as commercial or transactional. Commercial messages are more tightly regulated under the CAN-SPAM (Controlling the Assault of Non-Solicited Pornography and Marketing) act. |
sendable data extension | A data extension that contains the contact information of subscribers so you can use it to send a message. |
sender profile | The From name and email address that appears in your subscriber’s inbox. |
short code | A six-digit code that your customers use to send you text messages. |
single send | The sending of an individual email by the API, such as a confirmation message after a person fills out a form on your website. |
SMS | Short Message Service. Text-only messages sent to a mobile device that are limited to 160 characters. |
spam | Unwanted marketing messages. Spam is the digital equivalent of all the junk mail you receive in your physical mailbox. Sending spam can have legal repercussions. |
split: | A decision point in a journey. Splits can be based on the value of a subscriber attribute, based on whether a subscriber engaged with a previous message, or just random. |
subscriber/list model | An approach to storing data in Marketing Cloud where everything is stored in fields in a subscriber record. Lists group subscribers together for sending. |
tags | Descriptive keywords that you add to something in Marketing Cloud, such as a campaign, to help categorize it. |
topic profile | A collection of keywords or phrases that you want to monitor on social media. |
transactional send | A message whose primary purpose is not promotional, such as order confirmation messages. |
welcome campaign | A series of communications that you have with new clients right after they make a purchase or sign up for a communication from you. Also called an onboarding campaign.. |
wisdom of the crowd | The idea that the aggregate opinion of a large group of people is better than the opinion of any individual member of the group. |
workspace | A tool in Social Studio that limits user access to only certain accounts to ensure that the user doesn’t accidentally post in the wrong place. |
Monday, May 14, 2018
Salesforce Marketing Cloud Quick Glossary
Tuesday, March 13, 2018
Salesforce Marketing Cloud: How to Reactivate Held Subscriber
In order to change a subscriber's status from Held (undeliverable) back to Active, you will first need to change their status to unsubscribed.
Once they are in a unsubscribed status, you will have the ability to change their record back to active.
Once they are in a unsubscribed status, you will have the ability to change their record back to active.
To reactivate within the application (individual subscribers):
1. Log in to the Marketing Cloud application
2. Go to Email Studio | Email | Subscribers | All Subscribers
3. Click the Search button
4. Select Email Address from the Search where: drop-down field
5. Enter the subscriber's email address in the Is equal to: field and click the Find Now button
6. Click to highlight the subscriber from the search results list and click the View Properties link
7. In the General tab, click the Unsubscribe from all button
8. Click the OK button in the dialog box
9. In the General tab, click the Activate button (activates only on the All Subscribers list)
10. To activate the subscriber on individual lists, select the List tab.
11. Select the desired list and click the Details button
12. Click the Activate button to reactivate the subscriber on the specified list
13. Click the OK button in the dialog box to exit
2. Go to Email Studio | Email | Subscribers | All Subscribers
3. Click the Search button
4. Select Email Address from the Search where: drop-down field
5. Enter the subscriber's email address in the Is equal to: field and click the Find Now button
6. Click to highlight the subscriber from the search results list and click the View Properties link
7. In the General tab, click the Unsubscribe from all button
8. Click the OK button in the dialog box
9. In the General tab, click the Activate button (activates only on the All Subscribers list)
10. To activate the subscriber on individual lists, select the List tab.
11. Select the desired list and click the Details button
12. Click the Activate button to reactivate the subscriber on the specified list
13. Click the OK button in the dialog box to exit
***NOTE: To reactivate the subscriber on other lists, repeat steps 10-12 for each list.***
To reactivate via an import (multiple subscribers):
1. Log in to the Marketing Cloud application
2. Go to Email Studio | Email | Subscribers | Lists or All Subscribers
3. Click the linked name of the list in question (if sublist)
4. Click the Search button
5. Select Subscriber Status from the Search where: drop-down field
6.Select Undeliverable from the Is equal to: drop-down field and click the Find Now button
7. Click the Export option
8. Complete the wizard to export the subscribers to a file, selecting the Email Address and Subscriber Status fields to be included in the results
9. Edit the exported file and change the Email Status field values to Unsubscribed for every subscriber on the list that needs updated
10. Perform an import to the All Subscribers list selecting either Add & Update or Update. This will change their status to unsubscribed for all lists.
11. Edit the export file again and this time change the Email Status field to Active for every subscriber on the list that needs updated
12. Perform an import to the All Subscribers list selecting either the Add & Update or Update. This will change their status to active for all lists.
13. Perform an import to any other desired lists to change the subscriber status to Active at the list level.
2. Go to Email Studio | Email | Subscribers | Lists or All Subscribers
3. Click the linked name of the list in question (if sublist)
4. Click the Search button
5. Select Subscriber Status from the Search where: drop-down field
6.Select Undeliverable from the Is equal to: drop-down field and click the Find Now button
7. Click the Export option
8. Complete the wizard to export the subscribers to a file, selecting the Email Address and Subscriber Status fields to be included in the results
9. Edit the exported file and change the Email Status field values to Unsubscribed for every subscriber on the list that needs updated
10. Perform an import to the All Subscribers list selecting either Add & Update or Update. This will change their status to unsubscribed for all lists.
11. Edit the export file again and this time change the Email Status field to Active for every subscriber on the list that needs updated
12. Perform an import to the All Subscribers list selecting either the Add & Update or Update. This will change their status to active for all lists.
13. Perform an import to any other desired lists to change the subscriber status to Active at the list level.
Source : https://help.salesforce.com/articleView?id=000268698&language=en_US&type=1
Monday, February 19, 2018
SalesForce Marketing Cloud - System level variables
Hey All
A quick reference guide for system variables which are always hand to know :
view online = %%view_email_url%%
email address = %%emailaddr%%
name of campaign = %%emailName_%%
forward to a friend = %%ftaf_url%%
unsubscribe = %%unsub_center_url%%
profile center = %%profile_center_url%%
subscription center = %%subscription_center_url%%
sender reply name = %%replyname%%
sender reply email address = %%replyemailaddress%%
business name = %%Member_Busname%%
business address = %%Member_Addr%%
business city = %%Member_City%%
business state = %%Member_State%%
business postal code = %%Member_PostalCode%%
business country = %%Member_Country%%
email address = %%emailaddr%%
name of campaign = %%emailName_%%
forward to a friend = %%ftaf_url%%
unsubscribe = %%unsub_center_url%%
profile center = %%profile_center_url%%
subscription center = %%subscription_center_url%%
sender reply name = %%replyname%%
sender reply email address = %%replyemailaddress%%
business name = %%Member_Busname%%
business address = %%Member_Addr%%
business city = %%Member_City%%
business state = %%Member_State%%
business postal code = %%Member_PostalCode%%
business country = %%Member_Country%%
And its always good to know how to work with URLS in your e-mail :
URL from list
href="%%=RedirectTo(variable)=%%"
Variable as URL parameter
href="https://bob.co.za/?param=%%variable%%"
Variable as part of the URL
%%[set @url = concat("https://bob.co.za/",variable)]%%
href="%%=RedirectTo(@url)=%%"
Remove tracking from a URL
href="%%=concat('link you do NOT want to track')=%%"
Stay tuned as there is so much more to come.
May the force be with you.
Kind Regards
JS
Variable as URL parameter
href="https://bob.co.za/?param=%%variable%%"
Variable as part of the URL
%%[set @url = concat("https://bob.co.za/",variable)]%%
href="%%=RedirectTo(@url)=%%"
Remove tracking from a URL
href="%%=concat('link you do NOT want to track')=%%"
Stay tuned as there is so much more to come.
May the force be with you.
Kind Regards
JS
Friday, February 9, 2018
SalesForce Marketing Cloud - Ampscript
Hi All
Below I have added simple coupon code implementation using ampscript.
Some important points to note:
%%[
var @em, @couponRow, @couponCode
if _messagecontext == "PREVIEW" then
else
endif
]%%
Here's your coupon code: %%=v(@couponCode)=%%
My the force be with you.
Kind Regards
Jerome
Below I have added simple coupon code implementation using ampscript.
Some important points to note:
- I have the messagecontext as preview - when sending it should be send
- My data extension is called Coupons ( this should be replaced with your own if needed)
- This is merely a skeleton and you can write so much more to the data extension :-)
%%[
var @em, @couponRow, @couponCode
if _messagecontext == "PREVIEW" then
set @couponCode = "XX TEST XX"
else
/* include your sendable attribute/column here */
set @em = AttributeValue("emailAddr")
set @em = AttributeValue("emailAddr")
set @couponRow = ClaimRow("Coupons", "IsClaimed", "EmailAddress", @em)
if empty(@couponRow) then
/* You can do other error handling here if you want.*/
/* This aborts the send */
RaiseError("No coupons available", false)
/* This aborts the send */
RaiseError("No coupons available", false)
else
SET @couponCode = Field(@couponRow, "CouponCode")
endif
endif
]%%
Here's your coupon code: %%=v(@couponCode)=%%
My the force be with you.
Kind Regards
Jerome
Blogging
Hey All
So in the midst of the crazy rat race one does not always get the opportunity to blog as much as I did before...but as an advocate for knowledge share I dedicating more time to sharing my many tech adventures in an ever quest to support our global tech community.
Stay tuned as I will be posting more solutions soon.
Kind Regards
J Slinger
Friday, November 21, 2014
ConfigEntine task "wp-create-ldap" failed with SOAP connector problem.
[timestamp] ssl.default.password.in.use.CWPKI0041W
[timestamp] ssl.disable.url.hostname.verification.CWPKI0027I
[timestamp] Client code attempting to load security configuration
[timestamp] ssl.certificate.end.date.invalid.CWPKI0312E
Could not access WebSphere profile using: username=wpsadmin password=PASSWORD_REMOVED portNumber=10025 hostname=myportalserver.ibm.com
com.ibm.websphere.management.exception.ConnectorException: ADMC0016E: The system cannot create a SOAP connector to connect to host myportal.mycompany.com at port 10025.
at com.ibm.websphere.management.AdminClientFactory.createAdminClientPrivileged(AdminClientFactory.java:628)
at com.ibm.websphere.management.AdminClientFactory.access$000(AdminClientFactory.java:122)
...
Caused by: java.lang.reflect.InvocationTargetException
...
Caused by: com.ibm.websphere.management.exception.ConnectorNotAvailableException: [SOAPException: faultCode=SOAP-ENV:Client; msg=Error opening socket: javax.net.ssl.SSLHandshakeException: com.ibm.jsse2.util.g: PKIX path validation failed: java.security.cert.CertPathValidatorException: The certificate expired at Fri Aug 19 05:01:01 EDT 2011; internal cause is:
java.security.cert.CertificateExpiredException: NotAfter: Tue Oct 01 05:01:01 EDT 2014;
Using wsadmin to connect the server with type SOAP, the same exceptions prevented the correct connection.
[timestamp] ssl.disable.url.hostname.verification.CWPKI0027I
[timestamp] Client code attempting to load security configuration
[timestamp] ssl.certificate.end.date.invalid.CWPKI0312E
Could not access WebSphere profile using: username=wpsadmin password=PASSWORD_REMOVED portNumber=10025 hostname=myportalserver.ibm.com
com.ibm.websphere.management.exception.ConnectorException: ADMC0016E: The system cannot create a SOAP connector to connect to host myportal.mycompany.com at port 10025.
at com.ibm.websphere.management.AdminClientFactory.createAdminClientPrivileged(AdminClientFactory.java:628)
at com.ibm.websphere.management.AdminClientFactory.access$000(AdminClientFactory.java:122)
...
Caused by: java.lang.reflect.InvocationTargetException
...
Caused by: com.ibm.websphere.management.exception.ConnectorNotAvailableException: [SOAPException: faultCode=SOAP-ENV:Client; msg=Error opening socket: javax.net.ssl.SSLHandshakeException: com.ibm.jsse2.util.g: PKIX path validation failed: java.security.cert.CertPathValidatorException: The certificate expired at Fri Aug 19 05:01:01 EDT 2011; internal cause is:
java.security.cert.CertificateExpiredException: NotAfter: Tue Oct 01 05:01:01 EDT 2014;
Using wsadmin to connect the server with type SOAP, the same exceptions prevented the correct connection.
Cause
The default chained certificate has problems.
Resolving the problem
In WebSphere Application Server (WAS) version 7, a default chained certificate was introduced as a personal certificate. This certificate was created during profile set up and should be valid for a year. It should be renewed when its validity date expires.
When running ConfigEngine, it acts as a client that connects to the server through SOAP connector. It takes the parameters configured in /properties/ssl.client.props that points to the key store file containing the default personal certificate and residing at /etc/key.p12.
To renew the certificate, take the following steps
- Log in to the Integrated Solutions Console as the primary WAS administrative user;
- Navigate to Security > SSL certificate and key management > Key stores and certificates > NodeDefaultKeyStore> Personal certificates;
- Check the box besides "Default", and hit button "Renew". You should see the expiration date now is updated for another year.
- Restart servers.
Monday, November 17, 2014
How to uninstall IBM DB2 Content Manager Version 8.3 products if fix packs are also installed
Question
When you run the product uninstall program, you see the following error:
"You must uninstall the most recently installed fix pack before running this uninstall."
"You must uninstall the most recently installed fix pack before running this uninstall."
Cause
Fix packs must be uninstalled from the system in reverse order before you can uninstall the product.
Answer
To uninstall the latest fix pack, run the command:
IBMCMROOT/fixpack/cm/VERSION/_uninstall/uninstallUpdate
where VERSION is the version number of the fix pack.
Tip: To determine the current version installed for each IBM® DB2® Content Manager product, run the command IBMCMROOT/bin/cmlevel.
If multiple fix packs have already been applied, run the uninstallUpdate command for each fix pack starting with the latest fix pack and then continuing in reverse order. For example, if you have DB2 Content Manager fix pack 1, fix pack 3, and fix pack 6 installed, you should first uninstall fix pack 6, then fix pack 3, and then fix pack 1.
Once all fix packs have been uninstalled, run the uninstall program for the product you want to remove.
For DB2 Content Manager:
Run IBMCMROOT/_uninstCM/uninstall-cm.exe
For DB2 Information Integrator for Content:
Run IBMCMROOT/_uninstII4C/uninstall-ii4c.exe
For eClient:
Run IBMCMROOT/_uninstEC/uninstall-ec.exe
where VERSION is the version number of the fix pack.
Tip: To determine the current version installed for each IBM® DB2® Content Manager product, run the command IBMCMROOT/bin/cmlevel.
If multiple fix packs have already been applied, run the uninstallUpdate command for each fix pack starting with the latest fix pack and then continuing in reverse order. For example, if you have DB2 Content Manager fix pack 1, fix pack 3, and fix pack 6 installed, you should first uninstall fix pack 6, then fix pack 3, and then fix pack 1.
Once all fix packs have been uninstalled, run the uninstall program for the product you want to remove.
For DB2 Content Manager:
Run IBMCMROOT/_uninstCM/uninstall-cm.exe
For DB2 Information Integrator for Content:
Run IBMCMROOT/_uninstII4C/uninstall-ii4c.exe
For eClient:
Run IBMCMROOT/_uninstEC/uninstall-ec.exe
Wednesday, November 5, 2014
Troubleshooting WebSphere Application Server issues in Sametime Advanced 8
Where to look for errors (SystemOut, SystemErr, ffdc)
Logging/tracing usually found in /WebSphere/AppServer/profiles/profile_name/logs/. See Logging and tracing at the Info Center.
Server logs:
How to monitor CPU for WebSphere Application Servver
See How to monitor CPU for EB.
You can find on the following page Setting a diagnostic trace on a server
how to turn on tracing for the following:
Choose this detail level com.ibm.workplace.db.persist.
How to turn on tracing for vmm issues
To look for issues with ldap we will need to enabled wmm tracing. In the admin console, turn on tracing for "com.ibm.websphere.wim.=all:com.ibm.ws.wim.=all:com.ibm.wsspi.wim.*=all" at level FINEST. You should then see a trace.log file (where system.out and system.err live) with this tracing inside.
Something to read before setting up:
This is a good page for reading on what to monitor when using PMI Monitoring overall system health
Setting it up:
Basic monitoring should provide us with the 3 things we are interested in:
If you are going to do "Custom" monitoring, enable the following statistics to get # of DB/JMS/HTTP connections/sessions: JDBC Connection Pools.CreateCount, JCA Connection Pools.CreateCount, Servlet Session Manager.LiveCount.
Once PMI is enabled you can look at the "Current Activity. To do this:
From here on you can click on Summary Reports or Performance Modules which is more fine-grained. In Performance Modules, you can select the 3 statistics we are interested in. The picture below shows how to expand the trees and select the appropriate statistics.

Besides looking at Current Activity, you can View Logs. This option should be in the same location as Current Activity. Click View Logs and browse to the Server File where the PMI logs are saved. This location is usually: WAS\AppServer\profiles\AppSrv01\logs\tpv\
1. Modify IBM\was\AppServer\profiles\ST_Advanced_Profile\properties\soap.client.props file so you can stop Lotus Sametime Advanced with specifying a user name and passord. For example:
2. Configure WebSphere Application Servver to start as a service. User ID must have local security rights. Use the following syntax:
3. Go to Click Start - Control Panel - Double-click Administrative Tools - Double-click Services. You should see IBM WebSphere Application Server V6.1 - node-name. which is the windows service you just created.
Note: To remove the service, type WASService.exe -remove"service_name" from WAS\bin\.
Source : http://www-10.lotus.com/ldd/stwiki.nsf/dx/Debug_Sametime_Advanced_WebSphere_Problems
Logging/tracing usually found in /WebSphere/AppServer/profiles/profile_name/logs/. See Logging and tracing at the Info Center.
Server logs:
Look in system error logs, found in /WebSphere/AppServer/profiles/profile_name/logs/server1/SystemErr.log
Look in system out logs, found in /WebSphere/AppServer/profiles/profile_name/logs/server1/SystemOut.log
ffdc logs: Look in system out logs, found in /WebSphere/AppServer/profiles/profile_name/logs/server1/SystemOut.log
Look in ffdc logs, found in /WebSphere/AppServer/profiles/profile_name/logs/ffdc
How to look for CPU heap issues for WAS
To dump the javacore and/or heapdump on WebSphere:
(start the wsadmin console... you'll be prompted for login/pwd credentials...)
cd \ProgramFiles\IBM\WebSphere\AppServer\bin
wsadmin
(setup for the DUMPS... specifying application server to dump...)
wsadmin> set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]
(when ready to dump... execute the following to get a javacore file...)
wsadmin> $AdminControl invoke $jvm dumpThreads
OR
(when ready to dump... execute the following to get a heapdump file...)
wsadmin> $AdminControl invoke $jvm generateHeapDump
javacore/heapdump file will be in the following directory:
\ProgramFiles\IBM\WebSphere\AppServer\profiles\ST_Advanced_Profile
cd \ProgramFiles\IBM\WebSphere\AppServer\bin
wsadmin
(setup for the DUMPS... specifying application server to dump...)
wsadmin> set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]
(when ready to dump... execute the following to get a javacore file...)
wsadmin> $AdminControl invoke $jvm dumpThreads
OR
(when ready to dump... execute the following to get a heapdump file...)
wsadmin> $AdminControl invoke $jvm generateHeapDump
javacore/heapdump file will be in the following directory:
\ProgramFiles\IBM\WebSphere\AppServer\profiles\ST_Advanced_Profile
How to monitor CPU for WebSphere Application Servver
See How to monitor CPU for EB.
How to turn on tracing
You can find on the following page Setting a diagnostic trace on a server
- How to turn on logging when looking for persistent chat errors
- How to turn on logging when looking for vmm/ldap errors
- How to turn on logging when looking for skilltap errors
Choose this detail level com.ibm.workplace.db.persist.
How to turn on tracing for vmm issues
To look for issues with ldap we will need to enabled wmm tracing. In the admin console, turn on tracing for "com.ibm.websphere.wim.=all:com.ibm.ws.wim.=all:com.ibm.wsspi.wim.*=all" at level FINEST. You should then see a trace.log file (where system.out and system.err live) with this tracing inside.
How to turn on Performance Monitoring Infrastructure PMI
Something to read before setting up:
This is a good page for reading on what to monitor when using PMI Monitoring overall system health
Setting it up:
- In WebSphere ISC Console, go to Monitoring and Tuning - Performance Monitoring Infrastructure (PMI).
- Click server1.
- Enable either "Basic" monitoring or "Custom".
Basic monitoring should provide us with the 3 things we are interested in:
- Number of DB Connections
- Number of JMS Connections
- Number of HTTP Sessions
If you are going to do "Custom" monitoring, enable the following statistics to get # of DB/JMS/HTTP connections/sessions: JDBC Connection Pools.CreateCount, JCA Connection Pools.CreateCount, Servlet Session Manager.LiveCount.
Once PMI is enabled you can look at the "Current Activity. To do this:
- In WebSphere ISC Console, go to Monitoring and Tuning - Performance Monitoring Infrastructure (PMI).
- Click Performance Viewer.
- Click Current Activity.
- Click server1.
From here on you can click on Summary Reports or Performance Modules which is more fine-grained. In Performance Modules, you can select the 3 statistics we are interested in. The picture below shows how to expand the trees and select the appropriate statistics.
Besides looking at Current Activity, you can View Logs. This option should be in the same location as Current Activity. Click View Logs and browse to the Server File where the PMI logs are saved. This location is usually: WAS\AppServer\profiles\AppSrv01\logs\tpv\
Adding WebSphere Application Servver as a Windows service
1. Modify IBM\was\AppServer\profiles\ST_Advanced_Profile\properties\soap.client.props file so you can stop Lotus Sametime Advanced with specifying a user name and passord. For example:
#------------------------------------------------------------------------------
# SOAP Client Security Enablement
#
# - security enabled status ( false[default], true )
#------------------------------------------------------------------------------
com.ibm.SOAP.securityEnabled=true
com.ibm.SOAP.loginUserid=wasadmin
com.ibm.SOAP.loginPassword=mypassword
#------------------------------------------------------------------------------
2. Configure WebSphere Application Servver to start as a service. User ID must have local security rights. Use the following syntax:
WASService.exe -add "service_name"
-serverName server
-profilePath server_profile_directory
For example:
D:\IBM\WAS\AppServer\bin\WASService -add "SametimeAdvanced" -serverName server1
-profilePath "d:\ibm\was\AppServer\profiles\ST_Advanced_Profile"
-startType automatic
3. Go to Click Start - Control Panel - Double-click Administrative Tools - Double-click Services. You should see IBM WebSphere Application Server V6.1 - node-name. which is the windows service you just created.
Note: To remove the service, type WASService.exe -remove"service_name" from WAS\bin\.
Source : http://www-10.lotus.com/ldd/stwiki.nsf/dx/Debug_Sametime_Advanced_WebSphere_Problems
WebSphere Application Server - Quick How To
A quick list of "Good to Knows":
- What is the default URL of the admin console: https://$hostname:10003/ibm/console/logon.jsp
- What are the default ports: HTTP: 8080, HTTPS: 443.
- How to locate the logs: Logs can be found under
$install_root/profiles/$profile_name/logs/$server_name
. The default profile name is AppSrv01 and the default server name is server1. Example:/usr/IBM/WebSphere/AppServer/profiles/AppSrv01/logs/server1
. SystemOut.log is the file containing everything that was logged to standard out. Logs can also be viewed from the admin console by navigating toTroubleshooting/Logging and Tracing/server_name/Runtime
. - How to start/stop a server: If you're dealing with a "Network Deployment" type of installation (multiple application servers running under the control of the "deployment manager"), your can start/stop a server from the console (
Server/Server Types/WebSphere application servers
). Otherwise you have to do it from command line. Go toinstall_root/bin
and run./startServer.sh server_name
, e.g.,./startServer.sh server1
(this assumes that your installation has only one profile defined, otherwise you may need to "cd" to theprofile_name/bin
directory). Make sure that you run all commands using the appropriate system account. To stop the server, run./stopServer.sh server_name -username user_name -password password
. user_name and password is the credentials of an admin account, typically the same one you use to login to the console. - How to deploy an application: In admin console, navigate to
Applications/Application Types/WebSphere enterprise applications
, click on "Install new application", select "Fast path", accept all the defaults except that on "step 2" make sure that you targeted correct servers (if you have multiple servers/clusters in your environment). Note that you can deploy a WAR file directly, you don't have to build an EAR. In this case, make sure that you set a context root on "step 4" screen of the wizard. - How to change context root of a Web application: Go to
Applications/Application Types/WebSphere enterprise applications/application_name/Context Root For Web Modules
in the console. Re-start the application after the change. - How to change the order of classloaders: If you're getting a ClassNotFoundException when you're starting the app, changing the order of classloaders is the first thing you may want to try. Go to
Applications/Application Types/WebSphere enterprise applications/application_name/Manage Modules/module_name
and make the appropriate selection in the "Class loader order" drop-down (this assumes you're doing it for a WAR module). - How to enable dynamic class reloading: If you need to frequently update your deployed application (e.g., you use a local WAS installation for development), enabling dynamic reloading could be a huge time saver. Go to your application in the console, "Class loading and update detection", set "Override class reloading settings ..." and set polling interval to 2 seconds. See this post for more details on how to configure your development environment to support class reloading.
- How to find a host name and a port of the server: Go to
Server/Server Types/WebSphere application servers
. You'll find the host name in the Host Name column. To find a port, click on your server, and expand Ports.WC_defaulthost
is the HTTP port andWC_defaulthost_secure
is the HTTPS port. - How to kill a JVM: If the normal "stop" routine failed to stop the server in a reasonable amount of time, you may need to kill it. In a "Network Deployment" environment, simply navigate to the list of servers, select the server and click "Terminate". A node agent will kill the JVM for you. To achieve the same from command line (the only option if you're running standalone), cd to
install_root/profiles/profile_name/logs/server_name
, and kill the process ID contained in the fileserver_name.pid
. On Unix, you can simply dokill -9 `cat server1.pid`
(assumingserver1
is your server name). Use task manager ortaskkill /PID
on Windows. - How to browse JMS messages: Go to
Buses/Your bus name/Destinations/Your destination/Queue points/Your queue point/Runtime/Messages
. - Where to find configuration files: WAS has many configuration files, most of them are in XML/XMI format. The files are located under
$install_root/profiles/$profile_name/config/cells/$cell_name
.
Sunday, September 14, 2014
Installation of CF03 on Portal 8.0 may fail with exception
When trying to install CF03 on Portal 8.0, Installation fails with below error:
opt/IBM/Rendering/PortalServer/installer/wp.config/config/includes/wp_cluster_cfg.xml:1436: Detected single app deployment time greater than 5 minutes.
Check the \wp_profile\ConfigEngine\log\ConfigTrace.log log file for the following error:-
/opt/IBM/Rendering/PortalServer/installer/wp.config/config/includes/wp_cluster_cfg.xml:1436: Detected single app deployment time greater than 5 minutes at com.ibm.wplc.deploy.tasks.impl.ClusterWaitForSyncToCompleteImpl.execute(ClusterWaitForSyncToCompleteImpl.java:289) at com.ibm.wplc.deploy.tasks.AbstractBaseAdminTask.executeBean(AbstractBaseAdminTask.java:541) at com.ibm.wplc.deploy.tasks.AbstractBaseAdminTask.executeTask(AbstractBaseAdminTask.java:525) at com.ibm.wplc.deploy.tasks.AbstractBaseWsAdminWrapperTask.executeTask(Abs
tractBaseWsAdminWrapperTask.java:376)
In addition to that you will see error like below:
[wplc-wait-for-sync-to-complete] Distribution of AJAX Proxy Configuration not complete.
[wplc-wait-for-sync-to-complete] Distribution of Dojo_Resources not complete.
Workaround 1:
1. Try to increase maxAppTimeToWait="5" to 15 min. in wp_cluster_cfg.xml and run the installation again.
If doesn't work and you notice that wp_cluster_cfg.xml parameter revert back to lower value, then try the workaround below:
Workaround 2:
1. Edit the PortalServer/wps.properties file and remove the lines for:
ProfileName
ProfileDirectory
Do not just comment them out; remove them completely.
2. Install CF03. It should go through successfully this time. It will NOT update the profile so it should skip the failing script.
3. Make the same timeout changes to wp_cluster_cfg.xml again.
4. Add ProfileName and ProfileDirectory back to wps.properties.
5. Execute this ConfigEngine script to update the profile:
./ConfigEngine.sh CONFIG-WP-PTF-CF -DWasPassword= -DPortalAdminPwd=
If doesn't work, continue to next step.
Workaround 3:
1 Edit the Installation Manager configuration file, found at /opt/IBM/InstallationManager/eclipse/configuration/config.ini
2. Add the following line to this file: WP_UPDATE_SKIP_CONFIG=true
3. Save the file and run the portal installation again. You will need to run ./ConfigEngine.sh CONFIG-WP-PTF-CF -DWasPassword= -DPortalAdminPwd= to finish update.
Technote reference : http://www-01.ibm.com/support/docview.wss?uid=swg21622946
opt/IBM/Rendering/PortalServer/installer/wp.config/config/includes/wp_cluster_cfg.xml:1436: Detected single app deployment time greater than 5 minutes.
Check the \wp_profile\ConfigEngine\log\ConfigTrace.log log file for the following error:-
/opt/IBM/Rendering/PortalServer/installer/wp.config/config/includes/wp_cluster_cfg.xml:1436: Detected single app deployment time greater than 5 minutes at com.ibm.wplc.deploy.tasks.impl.ClusterWaitForSyncToCompleteImpl.execute(ClusterWaitForSyncToCompleteImpl.java:289) at com.ibm.wplc.deploy.tasks.AbstractBaseAdminTask.executeBean(AbstractBaseAdminTask.java:541) at com.ibm.wplc.deploy.tasks.AbstractBaseAdminTask.executeTask(AbstractBaseAdminTask.java:525) at com.ibm.wplc.deploy.tasks.AbstractBaseWsAdminWrapperTask.executeTask(Abs
tractBaseWsAdminWrapperTask.java:376)
In addition to that you will see error like below:
[wplc-wait-for-sync-to-complete] Distribution of AJAX Proxy Configuration not complete.
[wplc-wait-for-sync-to-complete] Distribution of Dojo_Resources not complete.
Workaround 1:
1. Try to increase maxAppTimeToWait="5" to 15 min. in wp_cluster_cfg.xml and run the installation again.
If doesn't work and you notice that wp_cluster_cfg.xml parameter revert back to lower value, then try the workaround below:
Workaround 2:
1. Edit the PortalServer/wps.properties file and remove the lines for:
ProfileName
ProfileDirectory
Do not just comment them out; remove them completely.
2. Install CF03. It should go through successfully this time. It will NOT update the profile so it should skip the failing script.
3. Make the same timeout changes to wp_cluster_cfg.xml again.
4. Add ProfileName and ProfileDirectory back to wps.properties.
5. Execute this ConfigEngine script to update the profile:
./ConfigEngine.sh CONFIG-WP-PTF-CF -DWasPassword= -DPortalAdminPwd=
If doesn't work, continue to next step.
Workaround 3:
1 Edit the Installation Manager configuration file, found at /opt/IBM/InstallationManager/eclipse/configuration/config.ini
2. Add the following line to this file: WP_UPDATE_SKIP_CONFIG=true
3. Save the file and run the portal installation again. You will need to run ./ConfigEngine.sh CONFIG-WP-PTF-CF -DWasPassword= -DPortalAdminPwd= to finish update.
Technote reference : http://www-01.ibm.com/support/docview.wss?uid=swg21622946
Subscribe to:
Posts (Atom)
Generate reports from Opportunities using a Visualforce Page in Salesforce
Step 1: Create a Visualforce Page Go to the Setup menu in Salesforce. Search for "Visualforce Pages" in the Quick Find box and c...
-
So I ran into this nasty little bugger and my approval process came to a grinding halt. For those who have never seen this before your fi...
-
Inline Editing So now I have tested the inline editing jsp done by David De Vos.Simply brilliant! Really offers you the ability to offe...