Skip navigation
Share This:

BMC Digital Workplace 18.11 is now available. This release introduces even more enhancements to end user experience as well as additional catalog capabilities.

 

All of the following enhancements are available for BMC Digital Workplace Advanced. Enhancements marked with an asterisk (*) are also available for BMC Digital Workplace Basic.

 

Dependent services

 

Define prerequisite services by mapping dependencies.

Add collaborators to Requests

 

Define Collaborators to view, edit and delete a Request.

 

 

Assign actions to class attributes

 

Add conditions to restrict the number of assets associated with a Service Action.

Questionnaire enhancements

 

Return additional fields based on fixed or dynamic responses to a question.

 

Use action triggers to display responses based on Dynamic lookup questions.

Reassign Approvals*

 

Send requests to other business users for approval.

Clear multiple notifications*

 

Remove all notifications from both the Digital Workplace Client and Catalog.

 

 

Connector Development

 

Develop custom (on-premise) connectors to transfer data to and from external systems via REST calls.   

 

Compatibility

 

 

For version details of Remedy ITSM Remedy AR System  HR Case ManagementClient ManagementAtrium CMDB Cloud Lifecycle Mgmt please refer to our Compatibility Matrix.

Next Steps

 

For a comprehensive summary of all enhancements please refer to our Digtal Workplace Advanced and Basic documentation.

Share This:

BMC Digital Workplace 18.08 is now available ! In this release we’re continuing to focus on new features to improve end-user experience.

 

All of the following enhancements are available for BMC Digital Workplace Advanced. Enhancements marked with an asterisk (*) are also available for BMC Digital Workplace Basic.

 

 

Multi-user requests

 

Quickly submit a request on behalf of multiple users.

 

 

 

Alternate Approver*

 

Select an alternate approver from the Digital Workplace Client.

 

 

Choose time/date interval or edit current setting.

 

 

Appover assignee will also receive an In App Notification.

 

 

My Stuff impersonation

 

Launch asset actions on behalf of someone else.

 

 

 

Search logic*

 

Configure search logic for services and knowledge articles

 

 

 

 

Quick requests

 

Bypass the Request profile page by enabling "Quick request".

 

 

 

Save for later

 

Save individual Requests for later submission.

Checkout flow

 

Change "On behalf of" or Quantity in the checkout flow.

 

 

 

Workflow Designer

 

Manipulate text using "String Utils" and return multiple records with "Get Entry by Queries".

 

 

 

Search Catalog requests by submitted answers

 

We can now also search catalog requests based on question response.

 

 

 

 

Innovation Suite views

 

Cross launch into an Innovation Suite application.

 

 

User Profile Synchronization*

 

Job title is transparently synchronized into your DWP Profile.

 

 

Sub-catalog for business units

 

Add a Sub-catalog and assign internal supplier or Administrator roles.

 

 

 

Broadcasts*

 

Broadcasts from ITSM or Smart IT are now also visible within Digital Workplace.

 

 

Branding*

Search filter names

 

Rebrand results filter tabs.

 

New filters are immediately visible on search.

 

 

Android

 

Customize the client without coding ability.

 

 

 

 

Compatibility

 

For version details of Remedy ITSM Remedy AR System  HR Case ManagementClient ManagementAtrium CMDBCloud Lifecycle Mgmt please refer to our Compatibility Matrix.

 

 

Next Steps

 

For a comprehensive summary of all enhancements please refer to our Digtal Workplace Advanced and Basic documentation.

Share This:

We are pleased to announce BMC Digital Workplace 18.05 is generally available and packed with new features !

 

 

*All features are applicable to Digital Workplace Advanced with the exception of the three levels of browse categories.

 

Simplified Architecture

 

  • Digital Workplace and SmartIT are now separate installers.
  • MongoDB and node.js (MyITSocial) has been removed.
  • Social data is now stored on the Digital Workplace RDBMS (Oracle & SQL).

Digital Workplace 18.05 is a required upgrade before any later releases. If you would like to upgrade to 18.08 when it's released you must first upgrade to DWP 18.05. There is no ability to skip this upgrade if you would like to move to later releases.

 

Save Multiple Carts

 

Save Carts for a later checkout.

Large Subcategory view

 

Subcategories now include a larger view.

Third Tier Category

 

Browse through three levels of Categories.

Remedy with Smart IT Integration

 

Comments to Catalog Requests will be reflected in their associated fulfillment applications and visa versa. Digital Workplace Requests are also visible within Smart IT.

Asset Management Integration

 

Leverage BMC Asset Management to view and action on Assets (CI's).

 

Owned Assets are visible under the "MyStuff" tab.

Add Classes to Asset Groups

 

Create Asset Groups and retrieve data from BMC Asset Management.

Create Asset Action questions using data from Asset Management

 

Data retrieved from BMC Asset Management can also be used wihthin Asset Actions.

As soon as the Action is launched, questions are populated from the relevant form within BMC Asset Management !

Amazon Web Services Catalog

 

 

Import services from the AWS Service Catalog.

 

Submit as a Request in the Digital Workplace Client.

 

 

Chatbot Requests

 

Enable Chatbot for a Request in the Catalog.

Automatically create the Request in Digital Workplace via Chatbot.

Search for submitted answers

 

Retrieve a Service Request based on question response.

Remove services from My Stuff

 

Remove unwanted services from the My Stuff tab.

Export and import Translated Services

 

 

Quickly localize a service by exporting and re-importing again.

View and edit imported Workflow

 

View imported workflow from BMC Service Request Management and add other activities.

 

View Workflow Relationship

Quickly check what questionnaires and services are related to workflow.

Rebranding

 

We now provide an xarchive binary file which you can open in the re-branding tool and create an IPA mobile application. You must sign this file using the rebranding tool and your digital cert from Apple.

Compatibility

 

For version details of Remedy ITSM Remedy AR  System Atrium Orchestrator HR Case ManagementClient ManagementAtrium CMDBCloud Lifecycle Mgmt please refer to the Digital Workplace Basic and Advanced Compatibility Matrix for further details.

 

 

Next Steps

 

For a comprehensive summary of all enhancements please refer to our documentation.

 

Please comment with your favorite feature

Share This:

JVisualVM is a powerful tool that provides a visual interface to see deep and detailed information about local and remote Java applications while they are running on a Java Virtual Machine (JVM).

jVisualVM is used to track memory leaks, analyze the heap data, monitor the garbage collector and CPU profiling. It also helps to improve the application performance and ensure that memory usage is optimized. With features like thread analysis and head dump analysis, it is very handy in solving run-time problems.

VisualVM is free, and you don’t need to pay a separate cost to get this.

In this blog, we are going to look how jVisualVM can be used to monitor the performance of DWP/Smart IT Tomcat.

 

Recommendation on Java Heap Space.

https://docs.bmc.com/docs/smartit20/smart-it-configuration-settings-749669506.html

 

To remotely monitor the health of tomcat, please add below parameters in tomcat

 

-Dcom.sun.management.jmxremote

-Dcom.sun.management.jmxremote.port=8086

-Dcom.sun.management.jmxremote.ssl=false

-Dcom.sun.management.jmxremote.authenticate=false

-Datsso.log.level=SEVERE

-Djava.awt.headless=true

 

You can add above settings as below

 

Windows: C:\Program Files\Apache Software Foundation\Tomcat7.0\bin\SmartITMyITTomcat8w

 

 

Unix:

File Name: /opt/apache/tomcat8.5/bin/setenv.sh

CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8086 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=DWP/SmartITServerName"

 

Make sure you have JDK installed on one of your client workstation or on your laptop. JVisualVM is available with JDK.

 

 

Optional:

Launch JVisualVM

Open Tool > Plugins

Install Jbeans

 

To connect to your SmartIT/DWP tomcat instance:

Open JvisualVM

Click remote > Add remote host

 

Enter MyIT/SmartIT Tomcat Server details

 

 

 

 

Once you connected, you can see the Heap Chart showing the Max Heap Space. You can monitor this chart during peak load. In the event, you see an issue like unable to login to application, application performing very slow, click on the heap dump available in the chart that you can share with BMC to identify what is consumed within the tomcat heap during runtime. This heap dump is crucial to find the root cause analysis of performance or application login issue.

 

There is also a chart for GC which helps narrow down the memory leak issues.  The last chart about Threads will help you narrow down whether the application maxed out the threads or not in the event of performance.  You can get the thread dump along with heap dump to identify the busy threads.

 

 

Things to check:

 

Our Recommendation is to keep the Min and Max Heap should be same.

 

Windows:  You can put the initial memory and Max memory pool by opening SmartITMyITTomcat8w within C:\Program Files\Apache Software Foundation\Tomcat7.0\bin folder.

 

Unix: You can put this in setenv.sh and pass as one of the JAVA_OPTS or just append to above parameter where we define the remote monitoring within setenv.sh

 

-Xms6144m

 

-Xmx6144m

 

 

 

If you install VisualVM- MBeans Plugin, you can review the values set for the tomcat

 

For Example: MaxThread parameter set to 500 threads for http connector

 

 

Benefits

 

There are many important features that VisualVM supports, such as:

 

1.       Visual interface for local and remote java applications running on JVM.

 

2.       Monitoring of application’s memory usage and application’s runtime behavior.

 

3.       Monitoring of application threads.

 

4.       Analyzing the memory allocations to different applications.

 

5.       Thread dumps – very handy in case of deadlocks and race conditions.

 

6.       Heap dumps – very handy in analyzing the heap memory allocation.

 

 

I hope you find this blog useful. Please comment on this blog with your suggestions to make the blog more productive and appreciate your general comments as well on this blog.

 

See more content like this one BMC Remedy products.

Share This:

We now call it DWP Catalog, but you probably know it as Service Broker. Like MyIT it has been renamed. But don’t worry, it’s still the same product you know and love. Right, now that we’ve got that clarified, let’s have a look at one of the big changes: what are we to do with Integration Service?

 

As a seasoned DWP Catalog veteran I’m sure you’ve built your fair share of services. The meaty part of designing services is the workflow designer which offers a flexible way of describing fulfilment processes.  The graphic representation of the workflow allows us to construct and visualise rather complicated processes. Among the collection of activities, tasks and links there are of course the connectors.

 

Connectors make it possible to interact with external systems which opens DWP beyond just ITSM and gives us greater flexibility. That’s nothing new – the connectors have been part of the product since it was first introduced. But since 18.02 we’ve made it possible to use Integration Service. Question is, what are you going to do with it?

 

First things first: the existing built-in connectors won’t go away, they’ll stay right where they are and they will be maintained. All your existing workflows will continue to work and there’s nothing you need to change. But it’s now also possible to use Integration Service.

 

Confusing? Perhaps, let me try to clarify this for you: Integration Service is not part of DWP, it’s a separate cloud-based solution which allows for integration between different platforms and applications. The service connects different applications, residing on cloud and on-premise environments. For example, you can connect ITSM to RemedyForce, SalesForce to Gmail, etc. These connections run on the platform (we call them flows), you don’t have to define them from an application perspective, meaning they’re not built into ITSM or Remedyforce, they reside on the platform. I could dedicate the whole article to Integration Service, but I’ll save that for another time. If you want to know more about what the platform has to offer read my other blog.

 

Besides defining connections on the platform itself, it’s also possible to use Integration Service from different BMC applications. Innovation Suite is the best-known example of this where we use the Service to connect to external (on-premise) applications. The same principle is used for DWP Catalog: we can now use connectors running on Integration Service directly from the workflow designer.

 

Want to know how to do this? Let’s have a look! Since Integration Service is not part of DWP, so you need to have an account for an Integration Service Instance. With DWP Advanced, customers that are either SaaS customers or on-premise customers that have the latest version installed and are current with maintenance have access to Integration Service.

 

Log into Integration Studio using the Integration Service URL. There are a few things we need to do here first. We use the concept of Sites, this provides the connection to a particular customer environment. Since Integration Service is cloud based it needs a way to connect to systems and applications in local (on-premise) networks. This is what a Site provides, it's the gateway to your network. If you log into Integration Studio, go to Sites and set up a Production Site:

 

dwp1.png

 

The Controller is a client which you install on a Linux server in your local network. This sets up the secure gateway to Integration Service. It allows for outbound only traffic so customers do not need to allow for inbound egress traffic. This is a modern cloud-based approach to integration. The Get Controller option will help you to install this. Once that's done you need to configure the connectors. Integration Service offers a variety of connectors which you can use. To do this you need to configure the connector so it knows what site to use and what the server details are. To see what's available, go to Catalog and click on Connectors:

 

dwp2.png

 

These are the connectors which you can use.  Let's have a look at the Remedy ITSM Connector. Look it up in the list and check the details. You can see the Triggers and the Actions, since we're using the connector from DWP Catalog we can only use the Actions. The Triggers only work if you build a Flow directly on Integration Service, you can ignore these for now. Before we can use it we need to configure it. Click on Configuration and click on Add Connection Configuration:

 

dwp3.png

 

This is where you tell the connectors how to connect to your Instance. You select your Site and specify the AR Server and Port. The Connector also needs to know what user account to use, you do this by adding an Account:

 

dwp4.png

 

The credentials are validated at this point, so we know for sure everything works okay. And once that's all done, we're ready to go. That’s everything we need to do on the Integration Service side. Let’s check what’s required on the DWP side.

 

DWP Catalog needs to know where it can find Integration Service, that's done via a configuration option in the Application Settings menu:

 

dwp5.png

 

You use the URL of the Integration Service instance; I'm using the developer instance for demonstration purposes. Once that is done you're ready to use the connectors in your workflow, so let's create a new Service and attach a new process. Notice the Palette on the left, there's a new Activity added called Connector. This links directly to the Integration Service Connectors, you can use multiple connectors here and link them to different Integration Service connectors.

 

dwp6.png

 

Just to keep it simple, I'm creating a simple process which creates an Incident. I add the Connector and tell it what Integration Service connector I want it to use (Connector). The Configuration refers to the Configuration we set up in Integration Service (site, AR server, username, etc). Next I choose the Action and fill in the parameters.

 

dwp7.png

 

And that's it! Save, publish and start using it. Obviously my example here is very basic, in a real-world scenario the process would look a lot more complex. But I hope this at least gives you an idea how to get started with this.

 

I know what you're thinking: that’s all very well, but why would you want to use Integration Service at all? Why not just stick to the existing connectors? The main problem with the in-process connectors is that there’s no SDK, you can’t develop your own connectors. If you need a connector for a new external application or need specific functionality, that wasn’t possible prior to 18.02. But since we use an external platform we have far greater freedom. You are free to write your own connectors and call these from DWP Catalog. Besides connecting to external systems we are also working on a SDK which will allow you to extend DWP Catalog’s integration capabilities, I'll write another blog article on this when that's available. With more people using Integration Service we’ll see more and more connectors extending the capabilities even more.

 

Just a few things to be aware of: Integration Service is optional to DWP Advanced customers and it’s available for both on-premise customers and DWP Advanced Cloud. It's a cloud-based platform so even if you’re using DWP on premise the API calls will flow through the cloud. In terms of security we make sure all transmissions of the data is encrypted using TLS encryption and nothing is stored during transit - the connectors are designed to be non-invasive.

 

And that’s all I have for now. I’d encourage you to consider using Integration Service when connecting with external applications. If you plan to write your own connectors, make sure to read my other blog article. And if you get stuck using the existing connectors in DWP Catalog? Well, you just have to let us know and we’ll do our very best to help you out. You can use the Integration Service community page, the DWP community page or raise a support case.

 

We'll have a more detailed look at DWP Catalog and Integration Service in a next article, so stay tuned!

 

Until next time,

Justin

 

Eager to get started? Here's how:

 

  • For existing DWPA customers: Create a support ticket and the support team will provide access
  • For Professional Services: Register at developer.bmc.com and request access to a sandbox of Integration Service and Innovation Suite
  • For new customers without DWPA: Customers can get trial instance after getting approval from Product Management
Share This:

BMC Digital Workplace 18.02 is now available. In this release, we’re introducing new features which continue to focus on improving end user experience and Integration Services.

 

We no longer use the 3.x format for versioning. 18.02 signifies February 2018

*With the exception of the healthcheck, all of these features are available with BMC Digital Workplace Advanced only*

 

My Stuff Actions

 

Submit an Asset Request from the Catalog.

 

Launch a Request on closure or from an existing Service which you are following.

 

 

Select workflow to be associated with an Action.

 

 

Add or remove Service Actions.

 

BMC Chatbot Integration

 

Request a Service using Skype for Business, BMC Chatbot Client, Text message or Slack !

 

 

Integration Service Support

 

Create your own connector using BMC Integration Services or choose from any of the available connectors.

 

 

In this example we're using the Jira Connector to create a new issue.

 

 

Multi-language

 

We can now also localize Catalog Services.

 

Activate localization by using the toggle button.

 

Choose the language and you are ready to localize !

 

 

Connector Instances

 

Configure multiple instances of a Connector.

 

In this example we're connected to three different ITSM systems !

 

 

Enhanced Request Report

 

Learn more about your Service Requests.

 

 

Enhanced Health Check

 

Additional checks for notification, SMTP and log level.

 

 

Compatibility

 

For version details of Remedy ITSM  Remedy AR System  Atrium Orchestrator  HR Case Management  Client Management  Atrium CMDB  Cloud Lifecycle Mgmt please refer to the Digital Workplace Basic and Advanced Compatability Matrix for further details.

 

 

Next Steps

 

For a comprehensive summary of all enhancements please refer to our documentation here. To learn how to build your own connectors using BMC Integration Services please refer to the following Blog.

 

Integration Service: Getting started with writing your own connectors

Please comment with your favorite feature

Share This:

In this release, we’re introducing new features focused on improving the end user experience and catalog capabilities.

 

 

Digital Workplace Basic

 

  • Favorites

 

Quickly add or remove a Service from the "Your Favorites" Section.

 

*Also available for Digital Workplace Advanced

 

Digital Workplace Advanced

 

User Experience Highlights

 

 

  • Prepopulated Cart Responses

 

Cart will prepopulate questions based on previous responses.

 

Cart responses are now saved in the event this window is closed or interuppted.

 

  • Cancel or Request Again

 

Native DWP Catalog Service Requests can be cancelled or requested again.

 

 

  • Cart Description

 

Label cart items with the same description.

 

 

  • Actions & Triggers

 

Automatically prefill a question based on an Answer or Open Questionaire Action.

ActionsQuestion.PNG

Use the new expression builder to trigger actions.

 

Administration Highlights

 

  • Copy or Rename Workflow

 

Workflows can now be renamed or copied.

  • Additional Context

 

Write an expression to reference a custom property from an output of an activity.

 

  • Overwrite Profiles

 

Choose whether to keep or discard a profile on reimport.

 

Profile.png

 

  • Custom Labels

 

Create a free label type.

  • Availability

 

Make a Service unrequestable in the Universal Client.

 

  • Routing of Custom Approvals

 

Approvals are now more flexible with additional fields.

Mapped fields are available for use with an Approval Rule.

 

 

  • AD Connector Enhancements

Leverage the Active Directory Connector to do the following:

 

  1. Find a Computer.
  2. Update a User or Computer Attributes.
  3. Add or remove a Computer to a Group.
  4. Check whether a Computer belongs to a Group.

 

Compatibility

 

For version details of Remedy ITSM  Remedy AR System  TrueSight Orchestration  HR Case Management  Client Management  CMDB  Cloud Lifecycle Mgmt please refer to the Digital Workplace Basic and Advanced Compatability Matrix for further details.

 

Next Steps

 

For a comprehensive summary of all enhancements please refer to our documentation here.

Please comment with your favorite feature.

Share This:

BMC Digital Workplace is better than ever! We listened to your feedback and are excited to introduce powerful new features focused on quality and simplifying your user experience.

 

 

Approvals

 

 

Password Protection

 

Configure Approvals to require a password.

 

 

Display Types

 

Choose the type of Approvals you would like to be displayed.

 

 

On Hold

 

Hide the "On Hold" button for Approvals.

 

 

 

Remedy Connector Enhancements

 

Identifiers

 

Create Workflow with Identifiers and output the result to another activity. In this example I'm mapping the Work Order, Incident and Change Request ID's to the description field of a Work Order.

 

Once the service has been submitted from Digital Workplace the values are visible within the Work Order.

 

 

Get Entry by Query

 

Retrieve data from AR System forms based on query and use the output for another activity.

Once the service has been submitted the output is visible as an "In App" notification activity in the Digital Workplace Catalog.

 

Process Error Handling

 

Catch errors with Boundary Events within the scope of an activity on which it is defined.

 

 

Device Persistence Cache

 

After initial authentication you will not be prompted to login again unless for certain unforeseen actions such as application update or crash.

 

Entitlements

 

More flexibility for Virtual Marketplace entitlement.

 

Choose entitlement criteria from ITSM foundation Data or Custom Groups.

 

iOS Application Deployment

 

Automatically execute a command by selecting a device which is associated with your user profile in BMC Client Management. For example, install an iOS Application. Once the software has been provisioned the Request will change from "In Progress" to a "Closed" state.

 

 

Compatibility Details

 

Please refer to the Digital Workplace Basic and Advanced Compatability Matrix for further details.

 

 

Next Steps

 

  • Read everything you need to know about BMC Digital Workplace Basic and Advanced.
  • For a comprehensive summary of all enhancements please refer to the following documentation.

 

BMC Digital Workplace Basic

BMC Digital Workplace Advanced

 

 

Remedy ITSM Cloud Lifecycle Mgmt Client Management

Share This:

 

Architecture

 

There may be occasions where you are unable to receive push notifications. Depending on the Device, Digital Workplace (DWP) will use the Apple Push Notification Service (APNS) or Google Cloud Messaging (GCM).Once a notification is triggered a DWP API sends the notification along with the users token to either the APNS or GCM Server. This token is what's used to identify the relevant DWP Device Client.

 

Troubleshooting

 

a) First of all, rule out the basics and make sure you have enabled push notification on your device and within your Digital Workplace Notification Settings in the Universal Client.

 

b) Are you able to receive notifications for other Device Applications ? If not there may be a problem which is more specific to your network.

 

c) Check the certificates are valid by running the Digital Workplace Health check utility.

 

d) Open the "connect.properties" file (C:\Program Files\Apache Software Foundation\Tomcat8.0\external-conf) and check to make sure push notification is not disabled (a "true" value indicates enabled).

 

pushNotificationFeature.enabled =

 

e) Check the "PUSH_NOTIFICATION_CERT" table contains two records, there should be one for Digital Workplace and another for SmartIT.

 

The iOS Certificate which is shipped with Digital Workplace needs to be renewed on an annual basis. Please ensure you re-sign the BMC Digital Workplace mobile application with your enterprise credentials as detailed in our documentation.

 

iOSCert.PNG

 

To check the Digital Workplace client expiration open the cert from the "%MYIT_HOME%\Smart_IT_MyIT\ux\WEB-INF\classes\certification" directory.

The example below uses the shipped iOS client. The password for this private key is bmc-appstores

 

Once imported, open Certificate Manager by typing "certmgr.msc" from a run box, click on the Personal =>Certificates folder and you should see an expiration date for the Apple Push Certificate. As you can see from the following screenshot, the expiration for this default certificate is the 24th of September 2017.

 

 

f) Check the "DEVICE_TOKEN" table for records with OS_TYPE equal to either 0 (iOS) or 1 (Android). If none are present then notifications will NOT be delivered to mobile devices.

 

Token.PNG

 

If the users token is present and the notification hasn't been sent, delete the row and initiate the notification again (providing previous checks failed). The token should be regenerated once the user logs in again.

 

g) If you are running Digital Workplace in a cluster make sure you have set the "master.server" value set correctly within the connect.properties file. In a single Server environment it should be commented out whereas in a cluster the primary should be set to "true" and the secondary "false"

 

h) Check to make sure the outbound notification ports are open to communicate with APNS and GCM, you can confirm this by using "telnet" from the DWP Server. 

 

In the following example you can see a successful connection to APNS.

 

[root@clm-aus-012345 ~]# telnet gateway.push.apple.com 2195

Trying 17.188.148.30...

Connected to gateway.push.apple.com.

Escape character is '^]'.

...and the same for Android.

[root@clm-aus-018772 ~]# telnet android.googleapis.com 443

Trying 74.125.30.95...

Connected to android.googleapis.com.

Escape character is '^]'.

 

For a full list of required ports please refer to the doc link in the "Further Resources" section below

 

i) If you are using a re-branded app make sure it's using the correct Bundle ID

 

  • Unpack the Enterprise IPA
  • Change to the payload directory

 

  • Switch to a command prompt and run the following command.

 

myuserID$ codesign -dvv MyIT.app/

 

Executable=/Users/myuser/Desktop/dwp_myuser 2017-07-27 13-48-51/Payload/MyIT.app/MyIT Identifier=com.bmc. Format=app bundle with Mach-O universal (armv7 arm64) CodeDirectory v=20200 size=71988 flags=0x0(none) hashes=2242+5 location=embedded Signature size=4690 Authority=iPhone Distribution: ACME Inc. Authority=Apple Worldwide Developer Relations Certification Authority Authority=Apple Root CA Signed Time=Jul 27, 2017, 13:48:42 Info.plist entries=59 TeamIdentifier=XXXXXXXX Sealed Resources version=2 rules=13 files=1017 Internal requirements count=1 size=176

 

The MyIT Identifier should match the bundle ID (User ID) from the resigned certificate.

 

 

j) Check the notification poller in the "connect.properties" is not commented out. By default it's set to 5 minutes.

 

com.bmc.bsm.myit.service.assistance.NotificationPoller.PERIOD = 300000

 

k) If all else fails, turn on push notification debug in the "logback.xml" file by adding the following lines:

 

<!--Logger for Push Notification-->

 

<logger name="com.bmc.bsm.myit.service.pushnotification" level="DEBUG" additivity="false">

<appender-ref ref="FILE"/>

</logger>

After 60 seconds, (default scan period) you should see more detailed information related to the push notification process within the ux log file.  Pay close attention to any google or apns activity. In the following example a push notification was sent to an iOS device and we can identify the user, client and iOS version. The highlighted device token should match the value in the "DEVICE_TOKEN" table.

 

DEBUG   | c.b.b.m.service.SecurityService | loginId=Allen, authentication=null, tenantId=000000000000001, systemApplicationName=MyIT, userApplicationName=MyIT-ITSM, applicationVersion=3.3.01,apiVersion=3030100, clientLocale=en_US, deviceToken=774f44f59593142fe6f5b341e2d302442aba573bbc33c3822e1b68139a0abe4d, osVersion=iOS 10.3.3, deviceModel=iPhone, verify=true

| c.b.b.m.s.p.apns.APNSService | Pushing alert notification to Apple for Device Token='[774f44f59593142fe6f5b341e2d302442aba573bbc33c3822e1b68139a0abe4d]', payload='TEST'.

 

l) Restart the "Smart IT/MyIT Application" service(s) and try again.

 

If push notification problems persist please log a case with us in here in Technical Support.

 

Further Resources

 

The following documentation & Knowledge Articles may also help.

 

Identifying connectivity and configuration issues by running health checks

Required ports

Google Cloud Messaging Overview 
Apple Push Notifications Tips

MyIT 3.x iOS client is available for download with new provisioning Profile

 

Remedy ITSM Remedy AR System

Share This:

At BMC, we’ve been undergoing a transformation, one that centers directly on how we help define the employee experience of the future. Driving the case for change is our team who want simplified tools to make them more effective. This work flexibility gives them a greater say in how their digital  workplace operates and as a team we saw a tremendous increase in productivity. For these reasons effective June 9th 2017,we’ve decided to simplify things and rebrand MyIT and MyIT Service Broker to BMC Digital Workplace.

 

BMC Digital Workplace is available in two tiers: Basic and Advanced. The functionality is the same on-premise and in the cloud.

 

                                                                                                                                                 *** Click here for BMC Marketplace

 

We will be renaming the Community and URL's on the week of the 12th of June, this change will be transparent.

 

The complete list of updates for Service Pack 2 are available in the Digital Workplace 3.3.02 Basic and Advanced release notes.

For further information and comments please refer to our BMC Digital Workplace FAQ

Share This:

Creating and Updating a ITSM Application Request using Service Broker Workflow

 

Service Broker leverages a Workflow Designer to interact with third party applications including Remedy ITSM providing the ability to create Incidents, Changes and Work Orders.

It also provides the ability to update, query and delete entries using the Set Entry, Get Entry and Delete Entry Activities - however these Activities are currently limited to performing a lookup based on a Entry / Request ID only.

 

Question: One of the use cases that may appear is how do I create a Work Order and then update the newly created Work Order with values when I only have basic information returned from each Activity?

 

Answer:  We need to put on our "Remedy ITSM Administrator" hat to understand what occurs during the creation of a request via the ITSM "Interface_Create" forms that Service Broker leverages.

 

The following steps occur when a request is created via Service Broker, and is the same process followed if creating a request via a third-party interface:

 

  1. Values are pushed into the applications "Interface_Create" form.
  2. Workflow generates the Application Number e.g. Incident Number, Change Number, Work Order Number.
  3. Workflow validates the information and performs all necessary lookup to retrieve the required information.
  4. If successful, the Entry ID [Field ID 1] of the "Interface_Create" record is returned in the transaction.  Note: This is not the workflow generated Application Number.

 

To obtain the actual underlying Application Number generated (Incident Number, Change Number, Work Order Number), we need to perform a query back against the "Interface_Create" record using the Entry ID obtained from step 4.

 

This is standard integration functionality for Remedy ITSM that has existed since the 7.x versions.

 

Question: How do we obtain the necessary ID's then use these to query and update existing records?

 

Answer: There are a number of methods that can be utilised, below is one method for Work Orders. The same principles apply across the ITSM applications.  It is recommended during testing to check the returned values using the "Send In App Notification" Activity.

 

Method One:

 

Create Update Work Order.PNG

 

The following lists the steps for the workflow above:

 

1.  Create the Remedy Work Order using the "Create Remedy Work Order" Activity.  This returns the "Interface Create Entry ID" [Field ID 1] as the Output.  This can be placed into a local parameter (for reuse), or you can use the Output from this Activity directly into the Input of the "Get Entry".

2.  Using a "Get Entry" Activity we query the "WOI:WorkOrderInterface_Create" record, by the Output obtained in the previous step, to obtain a list of values from the Interface_Create record.

          Get Entry Input.png

  • The Output for the Get Entry Activity is actually a Map (list) of key-value pairs (fields/values) from the underlying Remedy record.
  • If looking at the actual underlying code involved in the lookup, it looks something like this:

 

public Map<String, Object> getEntry(RemedyConnection connection, String formName, String entryId)

{

Entry entry = this.arApiManager.getEntryByEntryId(connection, formName, entryId);

FormFieldMapping formFieldMapping = getFormFieldMapping(connection, formName);

Map entryMap = getEntryMap(formFieldMapping, entry);

return entryMap;

}

 

  • As can be seen (semantics aside), the Output of the Get Entry is actually a "Map" of all the values from the form (formName) used in the Get Entry Java call to the ITSM Remedy application (the 9.x version of Remedy utilises the Java API -  which is what the Service Broker implementation is based on)
  • If you assign the Output to a local parameter, you can obtain the full process JSON string ID for the Output of this Activity that we use in the next steps to extract the key-value pair information, utilising the "Map" containing the result.

        Example - Output mapped to a local variable in the Get Entry Activity:

          Get Entry Output 2.png

  • By looking at the JSON representation of the Process [Clicking on the "{}JSON" button next to "Save" in the Designer], we can obtain the ID for the Output parameter that we will utilise in the next step.  In this case we are looking for the Get Entry Activity within the JSON string (snippet below).  As can be seen below, by allocating the Output to a local parameter in the Get Entry Output Map, we see the full JSON string representation of the Output parameter from the Activity.

 

{

      "resourceType": "com.bmc.arsys.rx.services.process.domain.ServiceTaskDefinition",

      "version": null,

      "lastUpdateTime": "2017-04-04T17:10:27.934+0000",

      "lastChangedBy": "Allen",

      "owner": "Allen",

      "name": "Get Entry",

      "tags": null,

      "description": "",

      "overlayGroupId": null,

      "guid": "rx-250ebb40-cb9b-4434-9dd2-462974e0bae0",

      "multiInstanceLoopDefinition": null,

      "actionTypeName": "com.bmc.myservice.connect.remedy:getEntry",

      "inputMap": [],

      "outputMap": [

        {

          "assignTarget": "Work Order Id",

          "expression": "${activityResults.rx-250ebb40-cb9b-4434-9dd2-462974e0bae0.output}"

        }

      ],

      "runAsUser": null,

      "label": "Get Entry"

    }

 

3.  Once we have the above JSON representation for the Get Entry Output parameter, we can use this to obtain the individual key-pair values by the "Key".  The "Key" represents the name of the Field on the ITSM Remedy form.  To obtain the "WorkOrder_ID", we need to use the above JSON string along with the "Key" to extract the value.

To do this, we add in the "Key" to the JSON string inside the brackets as follows:

 

${activityResults.rx-250ebb40-cb9b-4434-9dd2-462974e0bae0.output.WorkOrderID}

 

We can now copy the above string into a local parameter (Output Map Parameter) or an input to the next Activity.

 

The Workflow will display an error, this is due to the Workflow Designer not being able to resolve the expression to internal expression ("icon/parameter"), although it is valid JSON.  You can safely ignore this error (BMC are working on a fix for this behaviour).

 

 

Additional values can be obtained from the output parameter by using the name of the Field in Remedy (Database Name) for the target form specified in the Get Entry Activity.

Examples:

 

${activityResults.rx-250ebb40-cb9b-4434-9dd2-462974e0bae0.output.WorkOrderID}

${activityResults.rx-250ebb40-cb9b-4434-9dd2-462974e0bae0.output.Status}

${activityResults.rx-250ebb40-cb9b-4434-9dd2-462974e0bae0.output.Person ID}

${activityResults.rx-250ebb40-cb9b-4434-9dd2-462974e0bae0.output.Customer Person ID}

${activityResults.rx-250ebb40-cb9b-4434-9dd2-462974e0bae0.output.Site}

${activityResults.rx-250ebb40-cb9b-4434-9dd2-462974e0bae0.output.Detailed Description}

 

4.  Using the "Get Remedy Work Order By Id" Activity, we can obtain parameterised Output values which can be used in the next Activity.  The Output for this Activity has been broken out into the most commonly used parameters by BMC.

** Alternately you could use the same method above with the "Get Entry" to obtain values for any particular form, but you would need to know the Request / Entry ID [Field 1] for the record you want to retrieve the values from **

 

 

The above shows the "Request Id" Output parameter from the "Get Remedy Work Order By Id" Activity being used as the "Request Id" input value for a "Set Entry" Activity.

If you check the generated JSON for the Activity, you will see what the "Request Id" Output parameter is known as internally to the Service Broker workflow (you should now start notice the pattern between the internal representation of a parameter, and the "displayed" value in the UI Design"):

 

    {

      "resourceType": "com.bmc.arsys.rx.services.process.domain.ServiceTaskDefinition",

      "version": null,

      "lastUpdateTime": "2017-04-04T20:09:06.952+0000",

      "lastChangedBy": "Allen",

      "owner": "Allen",

      "name": "Set Entry",

      "tags": null,

      "description": "",

      "overlayGroupId": null,

      "guid": "rx-ddd6e18b-90c9-4c3c-bf9b-ea552e94d617",

      "multiInstanceLoopDefinition": null,

      "actionTypeName": "com.bmc.myservice.connect.remedy:setEntry",

      "inputMap": [

        {

          "assignTarget": "connectionId",

          "expression": "\"8aef2088-98f8-43fb-9ea6-4f4585070ce6\""

        },

        {

          "assignTarget": "requestId",

          "expression": "${activityResults.rx-a21dee9b-3c0c-4067-bf10-c6e3480897ef.requestId}"

        }

      ],

      "outputMap": [],

      "runAsUser": null,

      "label": "Set Entry"

    }

 

5.  Once we have the "Request Id", we can use the value in the "Set Entry" Activity for the "Request Id" input.

 

 

  • We also need to build an "Input Map" containing the key-pair values we want to pass into the "Set Entry" Activity.  The "Key" again represents the Field Name [Database Name] for the form we intend to update, the "Value" the information we are pushing to the field.

 

  • We then associate the Input Map to the "Set Entry" Field Values Input.

 

6.  We can finish of the process with a "Receive Task" Activity to wait for the Completion of the request.

 

 

Putting it all together without the Notifications, will look something similar to this:

 

 

Which performs:  Create Work Order, return Interface_Create Entry ID > Get Work Order Number from the Work Order Interface Create ("WOI:WorkOrderInterface_Create") form > Get Work Order Entry ID (Request Id) from the Work Order ("WOI:WorkOrder") form > Update Work Order (WOI:WorkOrder) with required values > Wait for Work Order completion

 

Conclusion

 

This demonstrates using the OOB provided activities to create and update the Work Order.  The same principles can be applied to the Incident and Change Management, and if wanting to update multiple times throughout a process workflow then it is recommended to store the ID's required in a local variable that can be reused.

 

Currently there is no OOB Activity in Service Broker to perform a query based lookup against a form in ITSM Remedy, so you will need to know the Entry / Request ID of the forms that you need to pull information back from or push information into.

Share This:

 

 

Logging Table

$AR_SYSTEM_HOME default is "/opt/bmc/digitalworkplace"

 

Problem Area

Logging
Location
ITSM/SRM integrationCombined API/SQL/Filter logging while reproducing the problem, arerror log, remote action log

$AR_SYSTEM_HOME/db

$AR_SYSTEM_HOME/log

Workflow DesignerBundle log, F12 Browser Developer Mode/process log$AR_SYSTEM_HOME/db
UIBundle log, Jetty log, F12 Browser Developer mode & Fiddler$AR_SYSTEM_HOME/db
ConnectorsBundle log, arerror log, F12 Browser Developer mode, Connector logging$AR_SYSTEM_HOME/db
ReportingBundle log, arerror log$AR_SYSTEM_HOME/db
DWP Client Integration

Bundle log, UX debug on the MyIT side, F12 Browser Developer mode & Fiddler
DWP Catalog debug level

$AR_SYSTEM_HOME/db

$DWP_HOME/Logs/dwp-catalog.log

ApprovalsCombined API/SQL/Filter logging while reproducing the problem, remoteaction.log, bundle.log, arerror log

$AR_SYSTEM_HOME/db

$AR_SYSTEM_HOME/Logs

Installationarsystem_install_log.txt, startup logs

$AR_SYSTEM_HOME/Logs

/tmp

Post Install scriptsarerror log, post install log

$AR_SYSTEM_HOME/db

$AR_SYSTEM_HOME/Logs

RSSOarjavaplugin & bundle log, rsso agent logs, rsso debug$AR_SYSTEM_HOME/db
User Group Syncuser synch log, debug log combined api & SQL logging

$AR_SYSTEM_HOME/db

"/src" directory

 

Catalog File System

 

Most of the Catalog related files are contained within the "digitalworkplace" directory, some of the more important directories and files are highlighted in the following illustration

 

 

OSGI Console

 

The Catalog application is run through a variety of different bundles which are loaded once the "dwpcontroller" script is run as part of an platform restart. Unlike the DWP Client, we cannot restart the individual components of the Catalog (without negative consequence) however we can check the Catalog's bundle status by using the Eclipse OSGI Console (Open Services Gateway Initiative).

 

The logging level for OSGI is controlled in the  "$AR_SYSTEM_HOME/conf/config.properties" file

 

 

# Enable osgi console for debugging

osgi.console.enable.builtin=true

osgi.console = 12666

To connect to the console you simply telnet to the Catalog host and execute the "ss" command.

 

[root@clm-aus-123]# telnet localhost 12666

Osgi>ss

Some of the more important Catalog related bundles can be identified by "myservice"

 

If you notice any of these bundles are in a "RESOLVED" state you can attempt to restart as follows:

 

Stop "ID#"

Start “ID#”

In the event the Catalog login page becomes unavailable for all users, restart the "com.bmc.myservice.uiservice-war_0.0.1" and try again. If you are still unable to log in please raise a case with BMC Technical Support. Type "disconnect" to end the session !

 

The connectors and bundles are held within the $AR_SYSTEM_HOME/deployedsmart bundles directory.

 

com.bmc.arsys.myitsb.myitsb-approval-1.7.1.jar

com.bmc.arsys.rx.approval-17.5.0-SNAPSHOT.jar

com.bmc.arsys.rx.assignment-17.5.0-SNAPSHOT.jar

com.bmc.arsys.rx.dataload-17.5.0-SNAPSHOT.jar

com.bmc.arsys.rx.foundation-17.5.0-SNAPSHOT.jar

com.bmc.myservice.bundle-1.0.00-SNAPSHOT.2567-dev.jar

com.bmc.myservice.connect.ad-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.aws-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.azure-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.bao-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.clientmanagement-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.clientmanagementmobile-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.clm-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.cmdb-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.cmdb-api-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.flexera-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.hrcm-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.innovationsuite-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.jira-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.msoffice-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.remedy-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.rest-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.xenapp-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.xendesktop-19.5.0-SNAPSHOT.514-dev.jar

com.bmc.myservice.connect.xenmobile-19.5.0-SNAPSHOT.514-dev.jar

 

 

DWP Controller Scripts

 

The "rxscripts" directory and sub-directories contain many scripts which are called by the Catalog but in some cases you may also run them manually.

 

/bin/check_migrations.sh        Checks migrations

/bin/create_schema.sh             Gets called by the post install script

/bin/current-user.sh                  Checks the current user who’s in the current session

/bin/tenant/find.sh                     Lists all the tenants

/bin/tenant/delete.sh                 Deletes a tenant

/bin/connector/refresh.sh         Refreshes the available connectors

/bin/healthcheck_core.sh         Checks if the Catalog is up or down

/bin/login.sh                               Used to log into Remedy from the command line

/bin/run_migrations.sh             Get's called when DB migrations are required

/bin/setenv.sh                            Sets up the environmental variables to allow the API endpoints

/bin/tenant_seed.sh                  Get’s called by the post install script

/bin/version.sh                          Get's current version by running

/bin/service/search.sh              Lists all catalog services visible by the current DWP user

/bin/process_def                      Remove/find workflow

In order to run these scripts you need to set up your environmental variables by sourcing the "setenv.sh" script

[root@clm-aus-123 bin]# source setenv.sh

 

Once you source the "setenv" script you then need to log into the Catalog from the command line and generate an authentication cookie. Once the mycookies key is generated subsequent scripts (provided they are in the same directory as the mycookie.txt) will run.

 

[root@clm-aus-123 bin]# ./login.sh hannah_admin@coffee.com password

 

eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE0NjI0NzMzNjAsIl9pbXBlcnNvbmF0ZWRVc2VyIjpudWxsLCJzdWIiOiJlSHVDUXo5ZUliUFg1UmtxaTlZUkZIMTQwbjhpWXd5SDhkc2FtdmhcL3VMZDF1dzBjbXg5UVM3Y2F2Wm85bWplR1o1T2tRMVE0MFRrQVRmY3lFdUd4Y0V6TGtVTjA0aldieVF3MDZUMGVlVkFcLzhRSEZ0ekpTVHc9PSIsIm5iZiI6MTQ2MjQ2NjA0MCwiaXNzIjoiY2xtLWF1cy0wMTQ1MjciLCJqdGkiOiJJREdBQTVWMEdFTUJDQU9HUFFFQUFBMjQ2MlgzUFciLCJfY2FjaGVJZCI6MzIxOTE2LCJpYXQiOjE0NjI0NjYxNjB9.CHebPeTu8y3JLFnIU8IjozKONMSA28xaaam9ww-e2Gg

 

[root@clm-aus-0123 bin]# ls -lrt

-rw-r--r-- 1 root root   610 Jun 15 14:59 mycookies.txt

 

In the following example I'm running the "find.sh" script to obtain information about a problematic tenant. We can also delete and recreate a tenant using the post install scripts (be careful deleting..)

[root@clm-aus-123 bin]# tenant/find.sh

{"totalSize":1,"data":[{"name":"coffee","domainIdentifier":"coffee.com","tenantId":"f53893b1d382","databaseName":"ARTenantCoffee","status":"Enabled","overlayGroupId":"f53893b1d382","activationStatus":"Completed"}]}[root@clm-aus-0123 bin]#

[root@clm-aus-123 bin]# tenant/delete.sh coffee   

 

Stopping & Starting the Catalog

 

We use the "dwpcontroller" script from the $AR_SYSTEM_HOME directory to restart the Platform and Catalog application

This script also restarts the Platform

[root@clm-aus-0123 digitalworkplace]#./dwpcontroller [-u $user_name] [-p $password] <stop|start|restart>

 

The "start" option calls “/sb/start.sh” which does the following:

 

  • Runs “$AR_SYSTEM_HOME/bin/arsystem start”
  • Checks if the DB/Port is up
  • If the DB is up it calls another script which checks the bundles status
  • If bundles are up another migration script runs which checks the DB to see if anything has changed (such as JARs) and may update a column or add a new table.

 

logback_server.xml debug

 

Logging level is controlled within the "logback_server.xml" which is located in the $AR_SYSTEM_HOME/conf directory

 

Please backup the logback_server.xml before making any changes, XML mistakes may impact the Catalog on start-up.

level=all    Best level of debug but can impact performance

 

      

  <appender name="BUNDLE" class="com.bmc.arsys.logging.ReconfigurableRollingFileAppender">

                <file>${com.bmc.arsys.homedir}/${com.bmc.arsys.server.dbdir}/bundle.log</file>

                <append>true</append>

                <rollingPolicy>

                        <fileNamePattern>${com.bmc.arsys.homedir}/${com.bmc.arsys.server.dbdir}/bundle.log.%i</fileNamePattern>

                        <minIndex>1</minIndex>

                        <maxIndex>10</maxIndex>

                </rollingPolicy>

                <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">

                        <maxFileSize>99MB</maxFileSize>

                </triggeringPolicy>

                <!-- Extra param to say log file creation at startup -->

                <needPreLoading>true</needPreLoading>

                <encoder>

                        <pattern>%d{MM-dd HH:mm:ss.SSS} %-4le %c %m%n</pattern>

                </encoder>

        </appender>

 

 

From 19.02 + you can control Catalog logging from the settings page:

 

RSSO debug can be written to the bundle log by adding the following lines under the existing bundle section.

       

   <logger name="com.bmc.rsso" level="DEBUG" additivity="false">

                <appender-ref ref="BUNDLE" />

        </logger>

 

RSSO logging is enabled by making the following two changed to the  the $AR_SYSTEM_HOME/pluginsvr/log4j_pluginsvr.xml file

 

<logger name="com.bmc.arsys.pluginsvr">

<level value="debug" />

</logger>

......

<root>

<priority value ="error" />

<appender-ref ref="PluginLog" />

</root>

 

RSSO Diagnostics

 

Starting with 19.02 we have a new diagnostic tool which checks RSSO configuration is correct. This tool is located in the $AR_SYSTEM_HOME/sb/configure_rsso directory. To run open the "run_diagnostic.sh" script and make sure it's the paths and diagnostic file name is correct:

 

#!/bin/bash

 

# Path to Catalog directory.

#catalog_home=/opt/bmc/digitalworkplace

catalog_home=/opt/bmc/digitalworkplace

 

DIAGNOSTIC_JAR=rsso-diagnostic-1.0-SNAPSHOT.jar

 

if [ $# -eq 0 ]; then

  params=("${catalog_home}")

else

  params="$@"

fi

 

if [ "X${JAVA_HOME}" = "X" ]; then

  JAVA_EXEC="java"

else

  JAVA_EXEC="${JAVA_HOME}/bin/java"

fi

 

${JAVA_EXEC} -jar ${DIAGNOSTIC_JAR} ${params[*]}

~

Once run the output should look like this:

 

[root@clm-aus-123 configure_rsso]# ./run_diagnostic.sh

05:13:11.164 -

Common validations:

05:13:11.167 - All RSSO agent jar files are in place in '/opt/bmc/digitalworkplace/deploy' and '/opt/bmc/digitalworkplace/pluginsvr'

05:13:11.167 - All RSSO agent config files are in place in '/opt/bmc/digitalworkplace/conf'

05:13:11.167 - Your RSSO agent version is '9.1.03.001'.

05:13:11.167 - It is recommended to have RSSO agent of version '19.5'.

05:13:11.167 - Your RSSO server version is '18.05.00'.

05:13:11.167 - It is recommended to have RSSO server and agent of same version.

05:13:11.167 -

Validating 'rsso-agent.properties' file in '/opt/bmc/digitalworkplace/conf':

05:13:11.168 - agent-id is dwpid

05:13:11.168 - Agent id should be the same on all DWP-Catalog nodes

05:13:11.168 - sso-external-url is http://<servername>:8080/rsso

05:13:11.168 - HTTPS is recommended for external URL

05:13:11.168 - sso-service-url is http://<servername>:8080/rsso

05:13:11.168 - http://<servername>:8080/rsso is accessible

05:13:11.169 -

Validating 'rsso.cfg' file in '/opt/bmc/digitalworkplace/conf':

05:13:11.169 - rsso.cfg file is configured correctly

 

Web Server (Jetty)

 

Jetty logging can be very useful to capture HTTP traffic and is enabled by un-commenting the following section and changing the log level

       <!-- Jetty Logging - uncomment block if jetty logging is required -->

    <appender name="JettyLog"

                class="com.bmc.arsys.logging.ReconfigurableRollingFileAppender">

                <file>${com.bmc.arsys.homedir}/${com.bmc.arsys.server.dbdir}/jetty.log

                </file>

                <append>true</append>

                <rollingPolicy class="com.bmc.arsys.logging.StoredRollingPolicy">

                        <fileNamePattern>${com.bmc.arsys.homedir}/${com.bmc.arsys.server.dbdir}/jetty.log.%i

                        </fileNamePattern>

                        <minIndex>1</minIndex>

                        <maxIndex>8</maxIndex>

                </rollingPolicy>

                <triggeringPolicy

                        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">

                        <maxFileSize>128MB</maxFileSize>

                </triggeringPolicy>

                <needPreLoading>true</needPreLoading>

                <encoder>

                        <pattern>%d{EEE MMM dd HH:mm:ss.SSS yyyy} %m%nopex%n</pattern>

                </encoder>

        </appender>

        <logger name="org.eclipse.jetty.server.Server" level="all" additivity="false">

 

Connector logging

 

Connector logging is available from 19.02. To enable, change the log level to "all"

 

</appender>

        <logger name="com.bmc.myservice.connect.remedy" level="all" additivity="false">

                <appender-ref ref="connect-remedy" />

        </logger>

        <logger name="com.bmc.myservice.connect.commons-ar" level="all" additivity="false">

                <appender-ref ref="connect-remedy" />

        </logger>

 

 

Process logging

 

Backup the logback_server.xml and add the following to the end of the file.

<!-- Process -->

        <appender name="ProcessLogToForm" class="com.bmc.arsys.logging.SubscribableAppender">

        </appender>

        <appender name="ProcessLog" class="com.bmc.arsys.logging.SiftingTenantAppender">

                <appender class="com.bmc.arsys.logging.SuspendableRollingFileAppender">

                        <file>${com.bmc.arsys.homedir}/${com.bmc.arsys.server.dbdir}/arprocess.log

                        </file>

                        <!-- <param name="Encoding" value="UTF-8" /> -->

                        <append>true</append>

                        <enableThreadLogging>true</enableThreadLogging>

                        <rollingPolicy class="com.bmc.arsys.logging.StoredRollingPolicy">

                                <fileNamePattern>${com.bmc.arsys.homedir}/${com.bmc.arsys.server.dbdir}/arprocess${threadId}.log.%i

                                </fileNamePattern>

                                <minIndex>1</minIndex>

                                <maxIndex>10</maxIndex>

                        </rollingPolicy>

                        <triggeringPolicy

                                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">

                                <maxFileSize>99MB</maxFileSize>

                        </triggeringPolicy>

                        <encoder>

                                <pattern>%m%n</pattern>

                        </encoder>

                </appender>

        </appender>

  <logger name="com.bmc.arsys.rx.services.process" level="debug"

                additivity="false">

                <appender-ref ref="ProcessLog" />

                <appender-ref ref="AlwaysOnLog" />

                <appender-ref ref="ProcessLogToForm" />

        </logger>

        <logger name="com.bmc.arsys.server.rx.services.process" level="debug"

                additivity="false">

                <appender-ref ref="ProcessLog" />

                <appender-ref ref="AlwaysOnLog" />

                <appender-ref ref="ProcessLogToForm" />

        </logger>

        <logger

                name="com.bmc.arsys.server.rx.services.action.DefaultCustomActionExecutor"

                level="debug" additivity="false">

                <appender-ref ref="ProcessLog" />

                <appender-ref ref="AlwaysOnLog" />

                <appender-ref ref="ProcessLogToForm" />

        </logger>

        <logger name="com.bmc.arsys.server.rx.services.action.ActionServiceImpl" level="debug"

                additivity="false">

                <appender-ref ref="ProcessLog" />

                <appender-ref ref="AlwaysOnLog" />

                <appender-ref ref="ProcessLogToForm" />

        </logger>

        <logger name="com.bmc.arsys.server.rx.services.action.DefaultCustomActionManager" level="debug"

                additivity="false">

                <appender-ref ref="ProcessLog" />

                <appender-ref ref="AlwaysOnLog" />

                <appender-ref ref="ProcessLogToForm" />

        </logger>

        <logger name="com.bmc.arsys.server.rx.services.connector.ConnectorCustomActionManager" level="debug"

                additivity="false">

                <appender-ref ref="ProcessLog" />

                <appender-ref ref="AlwaysOnLog" />

                <appender-ref ref="ProcessLogToForm" />

        </logger>

Then log into the mid-tier (Catalog) as dwpadmin and navigate to Sever Information > Log Files and tick "Process Log".

You need to perform an "dwpcontroller stop/start" for the changes to take effect

Startup issues

 

Navigate to the $AR_SYSTEM_HOME/sb/rxscripts/bin directory and uncomment the following line from the setenv.sh script

#export rx_trace="--trace-ascii ./trace.log"

unset rx_trace

 

Stop/start the Catalog again and check the trace log for errors.

 

Catalog Bundle log

 

Almost every troubleshooting scenario will require analysis of the bundle log. Here's an example of what a "healthy" bundle log looks like.

 

05-05 15:56:26.419 DEBUG com.bmc.myservice.connectors.service.ConnectorSrvImpl testing URI http://localhost:8008/api/sbe/connect/remedy]

05-05 15:56:26.520 DEBUG com.bmc.myservice.connectors.service.ConnectorSrvImpl connector URIs [http://localhost:8008/api/sbe/connect/baopoc]

com.bmc.myservice.connectors.service.ConnectorSrvImpl connector URIs [http://localhost:8008/api/sbe/connect/ad]

 

As you can see, DEBUG is enabled and it's constantly looping around checking each connector status. The following example demonstrates how you would use the bundle log to troubleshoot a typical problem.

 

  • In the screenshot below I have submitted a Service Request in DWP and you can see it's gone into a fault status.

 

WBYeats.png

 

 

The first step is to open a session in the “$AR_SYSTEM_HOME/db” directory and run a "tail" on the log.

  • [root@clm-aus-0123 db]# tail -f bundle.log

This command gives you a live feed of what's happening within the log.

 

  • In the example below I can see my Service Request is faulting because a required field is empty...

 

at sun.reflect.GeneratedMethodAccessor636.invoke(Unknown Source) ~[na:na]

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_95]

        at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_95]

        at com.bmc.myservice.common.util.SrvInterceptor.invoke(SrvInterceptor.java:23) ~[com.bmc.myservice.common-1.0.00-SNAPSHOT.jar:1.0.00-SNAPSHOT]

        ... 94 common frames omitted

Caused by: com.bmc.arsys.domain.etc.ARException: ERROR (100): Required Entry ID is empty.; form: rxn:/myit-sb/ServiceRequest

        at com.bmc.arsys.server.domain.validation.EntryValidatorImpl.validateEntryId(EntryValidatorImpl.java:335) ~[na:na]

        at com.bmc.arsys.server.domain.validation.EntryValidatorImpl.validateGetEntry(EntryValidatorImpl.java:323) ~[na:na]

        at com.bmc.arsys.server.domain.validation.handler.EntryValidationHandler.validateGetEntry(EntryValidationHandler.java:79) ~[na:na]

        at com.bmc.arsys.server.domain.service.impl.EntryServiceImpl.getEntry(EntryServiceImpl.java:366) ~[na:na]

        at com.bmc.arsys.server.facade.impl.EntryFacadeImpl.getEntry_aroundBody10(EntryFacadeImpl.java:143) ~[na:na]

        at com.bmc.arsys.server.facade.impl.EntryFacadeImpl$AjcClosure11.run(EntryFacadeImpl.java:1) ~[na:na]

  • Here's another example where I submit another Catalog Request from the DWP Client and the bundle log is telling me that I need to define an Work Order Manager on the ITSM side.

Caused by: java.lang.reflect.InvocationTargetException: null

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_95]

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_95]

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_95]

        at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_95]

        at com.bmc.arsys.rx.business.action.impl.ActionServiceImpl.invokeMethod(ActionServiceImpl.java:710) ~[na:na]

        ... 80 common frames omitted

Caused by: com.bmc.myservice.connect.exception.ConnectorException: ERROR (1440853): ; No work order manager group could be found. Manually select a group from the menus. If no group with an individual in the functional role of work order manager is defined, notify your System Administrator.

        at com.bmc.myservice.connect.ar.api.ArApiManager.createEntry(ArApiManager.java:448) ~[na:na]

        at com.bmc.myservice.connect.ar.api.ArApiManager.createEntry(ArApiManager.java:411) ~[na:na]

        at com.bmc.myservice.connect.ar.api.ArApiManager.createEntry(ArApiManager.java:400) ~[na:na]

        at com.bmc.myservice.connect.ar.common.services.WorkOrderService.createWorkOrder(WorkOrderService.java:14

Most errors are now visible by simply opening the Request from the Console:

 

SBException.PNG

 

Installation and Upgrade

 

The installation script will inform you if there are any problems. Full details are available within the "arsystem_install" log which is located in the /tmp directory. To obtain a live feed on installation progress, just run a "tail" on the log as follows:

 

[root@clm-aus-0123 tmp]# tail -1000 /tmp/arsystem_install_log.txt

 

The following extract is an example of a successful installation.

 

(Dec 15 2016 03:54:59.677 PM +0530),INFO,com.bmc.install.utility.logging.Log,

  --------------------------------------------------------

  BMC Remedy Action Request System 9.5.00 install succeeded.

  --------------------------------------------------------

(Dec 15 2016 03:54:59.697 PM +0530),INFO,com.bmc.install.product.base.installer.InstallCompletionInstallationTask,

  PROGRESS EVENT {Description=[installCompletion.installCompletion.description],Progress=[100],Detail=[installCompletion.installCompletion.complete]}

(Dec 15 2016 03:54:59.917 PM +0530),CONFIG,com.bmc.install.product.base.project.runner.ProjectRunner,

  LOG EVENT {Description=[COMPLETED InstallationTask],Detail=[com.bmc.install.product.base.installer.InstallCompletionInstallationTask]}

If the installer fails and the arsystem log doesn't identify the root cause, run the uninstall script (make sure you also remove any Catalog DB references if present) and run the script again in verbose mode as follows:

bash -x ./install-myit-sb.sh

This command will output a detailed log to the terminal. In the event of a failure the output will stop allowing you to scroll up and identify what was happening at the time.

Please back up the Catalog Databases and file-system before upgrading. In the event you encounter a problem you can quickly roll back and send the logs to BMC Technical Support.

Connector Refresh

 

There may be occurrences where your connectors are no longer visible in the Console. If this is the case try running the connector refresh script as follows:

 

[root@clm-aus-0123 rxscripts]# source bin/setenv.sh

 

./bin/login.sh hannah_admin@domain.com password

./bin/connector/refresh.sh

Approvals Integration

 

The 'MyITSB- Approval' process is responsible for sending the approval request from the Catalog to the ITSM Server. When a Service Request is raised from the DWP Client, the corresponding workflow on the Catalog machine is triggered which in-turn calls 'Request Approval' which communicates with the AR Server

SBApprovalStub.PNG

 

As a first step we would enable filter/API logging on the ITSM Server before reproducing the problem and we'll be able to follow the process flow within the log file. The next step would be to open the "SB:ServiceRequestStub" form on the ITSM Server and check the “Error Message” box. In the example below it's complaining about a timeout to the Catalog Server.

 

Make sure the "SB:LocalApprovalConfiguration" & "SB:RemoteApprovalConfiguration" Approval forms on the ITSM AR Servers have the correct information.

Once the Request has been approved by the manager, remedy workflow kicks in and attempts to send the data back to the Catalog via the "remoteaction.bat" file. This file along with the contents of the "remoteaction" directory are implemented by the Integration Server Patch.

 

Make sure the remoteaction script/batch file has the correct Java path

If the Approval status isn't being sent back to the Catalog, enable filter/API logging. You should be able to see the "remoteaction" command attempting to send the data back via the workflow. There is also a "remoteaction" log file (enabled in the logback_remoteaction file) which will allow you to track the status transmission back to the Catalog.

 

 

ITSM Integration

 

The following illustration depicts the process flow when submitting a request from DWP. As both Approvals and ITSM use a combination of the remoteaction.xml and associated JAR files in combination with remedy workflow, we will use the same troubleshooting methodology as above for Approvals.

 

 

The "Status Change" filters have changed names over the releases...

 

Browser Tools

 

Once Developer Mode (F12) is enabled check the network tab response and look for any exceptions. The screenshot below illustrates how I've captured the root cause of a problem by simply clicking on the REST call and selecting the response.

 

 

Ensure the DWP Catalog is reachable and the fully qualified domain name is being used.

 

Don't forget, the users must exist in both the user form on the Catalog Server (which is populated via the sync script) and CTM:People form within ITSM

 

DWP Client Catalog Debug

 

Open the logback-dwp.xml from the "/opt/apache/tomcat8.x/external-conf" directory and change these two extracts.

 

  <!--Logging of DWP Catalog -->

  <property name="LOG_DWP_CATALOG" value="true"/>

 

  <!--Optional DWP Catalog logger-->

  <if condition='${LOG_DWP_CATALOG}'>

    <then>

      <logger name="com.bmc.bsm.myit.service.sb" level="debug" >

        <appender-ref ref="DWP_CATALOG_FILE"/>

      </logger>

      <logger name="com.bmc.bsm.myit.rest.v2.assistance" level="debug" >

        <appender-ref ref="DWP_CATALOG_FILE"/>

      </logger>

      <logger name="com.bmc.bsm.myit.service.social.activity_stream" level="debug" >

        <appender-ref ref="DWP_CATALOG_FILE"/>

      </logger>

    </then>

  </if>

 

After the scan period of 60 seconds a new log file (dwp-catalog.log) will be created in the DWP/Logs directory.

Share This:

We are excited to announce many new enhancements to support a richer more engaging service catalog with MyIT and MyIT Service Broker. In this latest release, we are introducing new capabilities for enhancing your service catalog even more. Dynamic content helps boost engagement.

 

MyIT Pyramid.PNG

 

Broadcasts, Location & Service Health are not available in MyIT Self Service

**Only Available with Digital Workplace OnDemand, Service Broker OnDemand 3.3.01 and DWP 3.3.02

 

    

 

User Experience Highlights

 

 

 

Catalog Starter Kit

 

If you're using MyIT for the first time you'll be treated to a selection of sample Service Requests

 

SampleSRDs.PNG

 

Banner Management

 

Create promotional Banners to display in the Catalog

DesignBanner.PNG

Triggers actions or launch External URL's by tapping or clicking on a Banner

 

Banners are available in multiple sizes

BannerClient.png

 

Profile Enrichment

 

Digital Workplace OnDemand now offers profiles which can include multiple images, videos, ratings and reviews

 

Enriched Profiles.PNG

 

 

Search Approvals based on String or Type

 

Quickly filter or search for Approvals

 

Approval.png

 

Shopping Cart

 

The Shopping Cart is now available for MyIT Digital Workplace On Demand

 

ShoppingCart.PNG

 

 

Surveys

 

Users can now rate their experience using Surveys which are presented on both the Universal Client and Device (SRM & HRCM only)

 

Survey.PNG

 

 

 

 

Administration/Architectural Highlights

 

Questionnaire Library

 

Create your own Questionnaire Library within MyIT Service Broker

 

MyITQuestionLibrary.PNG

 

New Workflow Designer

 

Use the same Workflow Designer as the Innovation Suite

 

 

Workflow Designer.PNG

 

Query Remedy forms

 

Configure Service Broker to retrieve data from Remedy forms

 

Formlookup.PNG

 

Delete or Preview Workflow

 

Quickly Delete or Preview Workflow

Preview Delete Workflow.PNG

 

Check Service Broker Process Status

 

More control & view of Service Broker Services

 

Process View.PNG

 

Import Categories

 

Import and Map External Categories

 

Import Categories.PNG

 

 

MyIT Superbox Customization

 

Quickly customize the Superbox with your own text

 

CustomText.PNG

Save the new text and it becomes available in both the MyIT Universal Client and Device

CustomTextClinet.PNG

 

 

Universal Client Rebranding Tool

 

Upload a new Company Logo & change the Background Image

 

Change common background and text coloring or add additional CSS styling

 

Change the navigation color & logo

 

Click to download the compiled the code and the new style becomes available once it's copied to the MyIT Server

 

 

 

iOS Rebranding Tool

 

Style the MyIT iOS application and hard-code with the MyIT Server name/port

 

 

Once resigned & deployed, the changes are reflected on the Device.

 

    

 

 

 

MyIT User Report

 

 

Run a Report to check user activity

MyITReports.PNG

MyIT Health Check Report

 

Kick off the MyIT Health Check utility using a Batch file

Diagnostic.PNG

 

MyIT Diagnostics now checks BMC Remedy Single Sign-On

 

RSSO Check.PNG

 

MyIT Service Broker Connectors

 

New Amazon EC2, BMC Client Management, Office 365, Jira and Microsoft Azure Connectors

 

Connectors.PNG

Compatibility Details

 

This release is also compatible with Remedy ITSM 8.1 SP1 +, TrueSight 8.6 +,BMC Client Management 12.0, HRCM 4.7 & BMC Atrium Orchestrator 20.16.02 +

 

Next Steps

 

  • Read everything you need to know about MyIT & MyIT Service Broker
  • For a comprehensive summary of all MyIT & MyIT Service Broker enhancements please refer to the following documentation

 

BMC MyIT Service Broker 3.3 Enhancements

BMC MyIT 3.3 Enhancements

Share This:

Future versions of MyIT after 3.2 will be retiring the following features:

 

  1. Remedyforce and AppZone will no longer be supported in MyIT. MyIT 3.2 is the last version supporting those integrations.
    Existing installations of MyIT will not be affected.
  2. The “ Support" Tab will no longer be available. The features of the support tab and additional capabilities are available through the Service Catalog.
  3. Off-line support in the mobile app will be removed to provide better performance

 

 

Support Tab
Service Catalog
Picture1.pngPicture2.png

 

 

Why is MyIT ending Support for AppZone?

MyIT Digital Workplace OnDemand has made significant enhancements with their publication and promotion technology over the last year.  We are focusing R&D investment in MyIT and MyIT Service Broker. These products provide a modern and improved experience for publishing and managing your service catalog, along with extending the capabilities to allow for more granular control of the content published. Customers with existing installations of MyIT 3.2 or earlier and AppZone will not be affected and can continue using the products. AppZone will not be turned off until the end of the support shown below.

 

What is the replacement for AppZone?

The next version of MyIT Digital Workplace OnDemand will provide similar functionality to AppZone with additional enhancements to banner management.  The only exception is the ability to recommend apps from commercial app stores, though this capability is lightly used by customers

 

Why are we decoupling MyIT and RemedyForce

Remedyforce provides several self-service options. The majority of customers utilize the native Remedyforce capabilities because they find these native self-service capabilities meet or exceed their needs. Additionally, with the Summer ’16 release, RemedyForce team have closed the primary gaps to deliver full functioning self service capabilities for mobile users via Salesforce1.

 

The “Support" Tab

We have taken the best of both AppZones' rich media capabilities, including rich profiles, banners management, and rich icons, and added it to the browsing and discovery capabilities of the support tab, in our Unified Catalog experience. The catalog experience provides additional capabilities not found on the Support Tab. Within the catalog experience, you can setup sections to promote your top requested items, or content you wish to be more visible on first entry. We also support detailed discovery though the standard tree based category dropdown lists. Sections in MyIT. This coupled with enhancements to the searching capabilities provide a intuitive rich experience for your end users.

 

How long will MyIT 3.2 be supported with these features?

BMC’s support policy is to provide full support for at least 3 years from the (GA) date.  This includes service packs, patches, hotfixes, or workarounds to enable the product to operate in substantial conformity with its then-current operating documentation.  BMC will provide full support  for MyIT 3.2 until June 23, 2019.  For more details on BMC’s support policies, please refer to the following link.

 

For more information, please review the FAQ’s attached, related to each of the items mentioned above

 

Questions:

Share This:

BMC Education Services is getting many requests from customers to provide end user training for MyIT, mostly as web-based training. In fact, we are experts in providing both standard and custom end user training...or giving our customers' L&D teams a head start by providing content for them to customize themselves.

If you cannot access the video above, or you need more information, please contact Thomas Hogan (EMEA) Brian Hall (AMER) or Rodney Morton (APAC) or email education@bmc.com

 

Here's an overview of the My IT End User Training offering (data sheet also attached):

Goal

Accelerate software adoption with end user training

Screen Shot 2016-07-14 at 1.58.15 AM.png

Why

Organizations frequently deal with issues when employees don’t understand why a new software system has been implemented and how the software makes their jobs easier. Untrained employees tend to work around a new system, rely heavily on technical support, and use fewer features than provided. As a result, employee productivity declines and business costs increase.

 

Screen Shot 2016-07-14 at 1.58.06 AM.png

How

BMC Solution Training for End Users is an Education Services offering that boosts useradoption and speeds the time to value of a technology solution. We bring together the expertise, resources, and methodologies proven through deployments in hundreds ofglobal organizations to help you design, create, and distribute your enablement program and assets. We customize a program and materials to reflect your organization’s uniquevision, system implementation, and specific end user training needs, and make training available through your own learning management system (LMS). You can choosemultiple asset types or just one, including quick reference guides, interactive,web-based training, instructor-led learning, and more.

 

KEY DELIVERABLES

BMC Solution Training for End Users provides a variety of content options, from standard to custom.

Standard content – Receive out of the box content, without access to source files or the ability to edit

Tailored content – Use training modules that are specific to your organization’s needs

Licensed content – Access source files, training guides, and train-the-trainer information

Custom content – Build content specific to your business needs

 

KEY BENEFITS

Speed time to deployment – Accelerate adoption of new software with training from BMC experts

Improve productivity – Increase work efficiency and streamline business processes

Reduce costs – Decrease technical support requests and overall business costs

 

Dirk Braune Heather Leventry Mark Gradwell Marike Owen Alf Abuhajleh Delise Jung Tom Luebbe Chhabi Chauhan Mitch Myers Geoffrey Bergren Antoinette Kaftan-Kaemerow Erwann NEDELEC Gary Bersh Paul Cutsuvitis Kodi Rowden Crystal Mendell susie clare Fabienne de Beaufort sara hepner Shafath Syed David Giles

Filter Blog

By date:
By tag: