2024-03-20

Managing AWS Reservations with Request Tracker Assets

Photo by Christian Wiediger Unsplash.

Want to use AWS reservations to save money, but have trouble matching your reservations to your EC2 servers? Or maybe you want to spread out your reservations, but need an easy way to get a list of servers that currently don't have a reservation? AWS reporting doesn't currently make this possible, but Request Tracker’s asset system can.

Understanding AWS Reservations

If you run services like EC2 and RDS on AWS, you probably know that there are several levels of pricing based on how long you can commit to using the services. On-demand is the most flexible because you can deprovision it at any time, so it's also the most expensive. If you can commit to a longer term, like a year or more, you can sign up for "reserved instances" and get a lower price.

When you sign up for these reservations, AWS asks for a bunch of information about the servers you are committing to. These are details like the region, the type of server (t3.medium, etc.), and the platform (Linux, etc.). For the reservation to get credited on your bill correctly, all of the reservation information must match up with your running servers.

When you start running more than a few services, tracking all of this information to make sure your reservations are being used can become a challenge. AWS has a utilization report that will tell you in aggregate if your reservations are being used or not. But this report doesn't connect specific EC2 or RDS instances with a reservation. This can be good if you remove an instance and then create a new one because the reservation will transfer. But if you want to review all active services and figure out which reservations are being used where, the AWS reporting doesn't provide that.

RT Asset Tracking

RT's asset tracking system is designed to record this kind of information, so we decided to start tracking our AWS resources and reservations in RT to help us match the two together.

To start, we needed to get the AWS assets created in RT. AWS has extensive APIs to access information about your resources, so we created a utility to fetch data about EC2 and RDS instances and create an asset record for each. We put all of these in one catalog called "AWS Resources".

Next we wanted to track our purchased reservations. We created a new catalog called "AWS Reserved Instances" to track those, since they aren't really the same thing as an EC2 or RDS instance. We also wanted to track different asset details on reservations, like start and end dates. Reservations also have "states" in AWS, so we were able to map that to the asset status and create a custom asset lifecycle with all of the AWS state values like "pending payment", "active", and "retired".

Once we had all of the information sync'd from AWS, we could start making sense of it. We started by creating some categories of assets using a few saved searches. We put them all in a dashboard like the one below so we could see what we had.

AWS asset dashboard in Request Tracker

Assigning Existing Reservations

The first thing we wanted to do is connect reservations with a matching resource. This mapping is very useful for tracking what we have purchased, but it just doesn't exist in the AWS interface.

Assets have links, similar to tickets, so we decided to link each resource asset with a reservation asset. To make that easy, we created a saved asset search called "Unlinked AWS Reservations", which is the third search above. This is all reservations without a linked asset, which at first was all of them.

In the search results, we added a custom column called "Link to Resource". Each reservation in the results then had a link to a new page that showed all AWS assets (EC2s, RDSs) that matched the details of that reservation. So a reservation for an EC2 t3.medium in us-east-1 would show all matching EC2 assets that also were not linked yet. This is important, because we need to make sure our linking aligns with the AWS rules for counting reservations in our bill.

To link them, we pick one from the list and click Link. We worked through all of our existing reservations until all were linked and our "Unlinked AWS Reservations" was empty.

Buying New Reservations

In our case, we didn't have a reservation for every AWS asset, so when we were done linking, our "EC2 Instances without Reservations" and "RDS Instances without Reservations" still had some assets. These two lists now became our shopping list for new reservations.

The tricky part about reservations is you need to manually fill out all of the fields in the AWS interface. If you get any fields wrong, your reservation won't match an existing resource and you'll end up paying for the unused reservation.

Previously we would keep an EC2 or RDS AWS console page open in one browser window, then open another browser window with the “buy” form, and carefully check every value. This was tricky because the values are at different locations all over the EC2 and RDS pages.

With our new asset searches, we modified the search layout to show all of the information needed to buy a reservation, and we put the values in the same order as the reservation form. This makes it much easier to buy new reservations with less stress.

We used this process to buy some new reservations now that we could easily see what was needed. Then we re-ran our import utility and the new reservations showed up in "Unlinked AWS Reservations". We followed the previous process and got them all linked until we had the coverage level we wanted.

Expiring Reservations

When you buy a reservation, you commit to some term, like 1, 2, or 3 years. Based on what you picked, the reservation record will have a duration. We use that duration to figure out the reservation end date and store that on the asset. This information helps populate the top two searches on our dashboard, "Recently Retired AWS Reservations" and "Expiring AWS Reservations".

The first is reservations that are now retired, so assets that previously had a reservation are no longer covered. That means our bill just went up and we need to buy a new reservation to get savings for another year.

To help plan ahead, "Expiring AWS Reservations" looks ahead 60 days to let us know which ones will be expiring soon.

Using these two searches, we can plan to buy new reservations at regular intervals. We can also watch the EC2 and RDS searches to see any new instances that might be added.

Connecting AWS with Your Business

The visibility we gained from linking the reservations was a huge win for us and saved a bunch of time we previously spent trying to understand what systems had reservations and where more were needed. But now that we have AWS asset records in RT, we can do even more. We can link them to customer tickets, link them to change management activity, and link them to sales and contract activity which is also tracked on tickets. Our AWS resources are now integrated into all of our other processes, which is a huge win given how important AWS is in our hosting business.

Does any of the above sound familiar? If you are trying to manage AWS resources via the AWS console, but having a hard time linking that to your other business processes, drop us a line. We'd love to share our experience and talk about how Request Tracker can bring some organization to your AWS infrastructure.

2024-01-26

Streamlining Change Management with Simple Request Tracker Extension

Image of wrenches by Dmitriy Demidov on Unsplash.

Managing change in a hosting environment is a complex task that can involve adding new services, software updates, and configuration changes. Request Tracker (RT) provides all of the tools to schedule and track these changes, especially using the Change Management extension we showed recently. But this scheduling and tracking can only happen if the change management tickets are created and all of the fields are set, and this can be a challenge for a busy team.

We had exactly this case in our hosted RT environment. Customers write in to support with various requests and sometimes these require a change on their hosted RT system. We want to track those changes and it was taking extra time for our support team to create and fill out these change management requests. So we created a small extension to make this easier.

Goals for the new Extension

Before we got to work, we identified our main goals for the new extension.

1. Create a Link on Support Tickets

To make change management easy, we wanted a single link on support tickets that would take the user to a create ticket page with the Change Management queue selected.

2. Link Location

We could have created a single link, possibly in the Actions menu on the ticket. But looking at past tickets, we realized we often wanted to quote a specific transaction, usually the reply that explained the requested change. Based on that, we decided to put a link on each transaction in the ticket history which allowed us to quote the text in that reply.

3. Pre-filled Fields

When our staff clicked the link, we wanted to automatically fill out as much information as possible on the new change management ticket. This would make creating the ticket much easier, and reduce the risk of human error.

4. Ticket Linking

To make it easy to trace every change, we wanted the new change management ticket be linked to the support request that asked for the change. We also wanted the change to show up in a list of all changes for that customer.

Building the Extension

Adding a single link is a small change, made easy using callbacks and other tools RT makes available for building extensions. When we started to add more details, like all of the fields we wanted to set automatically, it got a little more involved, but not much. Luckily our team has some experience building RT extensions.

Our Updated Change Flow

Image showing a wrench icon in the RT ticket history.

Our new extension adds a wrench icon on each transaction for support tickets that fits right in with the existing reply and comment icons. We included some logic to look up information on the customer's support contract and only add the wrench if the customer uses our hosting.

The main fields on the change management ticket are automatically filled out based on our most common changes.

Screenshot of a change management ticket with fields automatically filled out.

All of these fields can be changed by the user before the ticket is created. We set the defaults based on the most common case, but it still supports other situations, like scheduling a change for a few days later.

Change Management Best Practices

Implementing this small extension helped our process in several ways:

RT gives you the flexibility and freedom to customize your system to make routine tasks fast and easy for your staff. While implementing custom solutions can take some time, this is offset by the day-to-day savings once it's up and running for your users.

Ready to get started with some changes of your own? Check our documentation to start building your own extension. You might even see if you can get some help from one of the AI tools out there now available, many of which know how to write RT code.

If you’re looking for some hands-on help with extending RT to meet your specific needs and business goals, reach out to us to explore what you can achieve!

2024-01-04

New Year's Resolution: Become Indistractable at Work with Request Tracker

Nir Eyal's new book, "Indistractable," is a beacon for everyone struggling with the daily mental tug-of-war at work. He offers actionable steps to reclaim your focus and achieve laser-sharp productivity. But let's be honest, implementing these strategies requires more than willpower alone. That's where Request Tracker comes in – a shared platform for conquering workplace distractions and keeping your boss in the loop.

Scheduled Syncing Explained

Eyal was recently on the podcast Lenny's Podcast and he explains how syncing with your boss can help you with your quest to become indistractable. Here is the part of the podcast where they talk about priority and syncing.

Scheduled syncing section of Nir Eyal’s episode on Lenny’s Podcast.

You can use your calendar and set up this weekly meeting with your boss, but what if there was a view of everything you were working on that your boss could check whenever they have time in their busy schedule? What if they could get an email update as you make progress throughout the day? What if they could go in and update the priority of a task directly, leaving you a note explaining why? Request Tracker makes all of this possible.

A Team Approach

Eyal emphasizes the importance of "externalizing your commitments." Request Tracker does exactly that. Ditch the sticky notes and mental to-do lists, and pour your tasks into the system. Categorize them, set priorities, and assign due dates. Suddenly, the overwhelming chaos transforms into a manageable shared roadmap.

And unlike individual to-do apps built just for you, RT's team-based system is built for collaboration. Give your boss an account, and you can create dashboards they can quickly view whenever they need to. Create accounts for your team and everyone can see what's happening and make updates as they complete tasks.

View Tasks Your Way

Eyal also talks about a "Timeboxing" technique. Request Tracker lets you break down large projects into smaller, time-bound tasks. You can then set a Starts and Due date and time to schedule your work at whatever level of detail you need. You'll be amazed at how much more you can accomplish in a distraction-free zone.

The simplest view of your plan for the week can be a list of the task tickets you have created, filtered by the tasks due this week, and sorted by priority. You can also get the calendar view you want using the free RTx::Calendar extension we recently talked about.

Screenshot of a calendar view of one week of task tickets in Request Tracker

Prefer to keep your tasks and reserved time in your main calendar? No problem. RT can provide an iCal compatible feed of any set of task tickets and you can subscribe to this from your main calendar. Events from RT will then show up in your main calendar where other non-RT users can see them.


Keeping Your Boss in the Loop (Without the Micromanagement)

Transparency is key to a healthy work relationship. Request Tracker's real-time updates and progress reports keep your boss informed without the constant need for check-ins. They see what you're working on, the progress you're making, and any roadblocks you're facing. No more frantic "What's on your plate?" emails or nerve-wracking status meetings.

Collaboration Without the Collision

Eyal highlights the importance of "frictionless collaboration." Request Tracker fosters seamless teamwork. Assign tasks to colleagues, share updates, and track progress together. No more chasing down teammates or deciphering cryptic email threads.

As you are getting control of your attention, you don't want to do so at the expense of your boss or coworkers. Request Tracker's notification settings keep you in sync with your team at whatever level makes sense. Add team members as watchers on individual tasks they need to see, remove them from personal task tickets, and mute individual updates that don't need an email.

And everyone on the team can delete email worry-free because Request Tracker keeps a record of all updates right on the ticket. In the future, they can always check the ticket if they missed an update. No need to create yet another email folder to track updates.

Becoming Indistractable, One Request at a Time

Nir Eyal's "Indistractable" offers a powerful framework, and Request Tracker provides the tools to translate theory into action. It's your digital assistant, your focus facilitator, and your communication machine. So, ditch the distractions, embrace the power of Request Tracker, and watch your productivity – and peace of mind – skyrocket. Remember, a focused you is an unstoppable you.

Ready to reclaim your focus and become indistractable at work? Sign up for a Request Tracker demo today and experience the difference!


2023-12-21

Creating RT Scrips with AI

Photo by Emiliano Vittoriosi on Unsplash

AI has been a huge topic in 2023 across all industries and we have been experimenting with it at Best Practical across all parts of our business. One of the areas where we see some real potential is allowing more RT admins to build custom Scrips to automate more things in their systems. Many tools have tried for years to build GUI interfaces to help people build complex logic without learning a programming language. The new AI tools may have just made it possible to let people explain what they need in natural language and get functioning code to implement it.

Experimenting with ChatGPT

The first step in working with the new large language models (LLMs) is working out how to explain to the model exactly what you want it to do for you. These instructions are “prompts”, so this has been referred to as “prompt engineering”. There are techniques that can significantly improve your likelihood of getting good output, so there are many ChatGPT prompt cheat sheets available online and OpenAI has published their own documentation to help people get the most out of the tool.

I decided to try to create a simple Scrip that I have used in training, which is “On Update from Big Boss, Set Priority to High”. This is a fairly simple scrip that uses information about any update on a ticket to possibly change the priority. As you can see from the video, the process involves working through various prompts to get the correct code to create the condition and action. The really cool part is that once you work out how to ask correctly, ChatGPT shows you that it knows how to program valid RT code.

Video showing an RT scrip being created with ChatGPT.

AI Resources

As noted in the video, OpenAI’s ChatGPT isn’t the only service available as a potential coding partner. I have experimented with Microsoft’s Bing and Google’s Bard. There are also open source options like HuggingFace, which has several models to choose from. When we tested, we got some decent output using falcon-180B-chat. All of these services require an account and you’ll need to log in. Each behaved a little differently and needed different tuning to refine and improve the prompts.

Creative Coding

Even with the AI help, you might still run into some snags. One of the models included this line in the sample code output:

my $modifier_email = $self->TicketObj->LastModifier->EMail;

That looks perfectly reasonable, except tickets objects in RT don’t have a “LastModifier” method. And even if it did, RT usually refers to email as EmailAddress rather than EMail. What to do if you run into this?

If you get some errors with suggested code, you can check our documentation to see if there is something close. For example, the RT::Record class, the parent of RT::Ticket, has a method LastUpdatedByObj which is the user who last updated the ticket. That’s pretty close, and you can call “EmailAddress” on that. So the AI might give you a good idea and our documentation can get you the rest of the way. You might also be able to prompt the AI to review the code and confirm it’s real.

Have you had any experiences working with AI to generate some custom RT code? We’d love to hear about what other people are trying and what your experience is. Stop over to our forum and let us know how it’s working for you.

2023-12-14

New Calendar Features for Request Tracker

Managing your organization's schedule, maintenance windows and appointments just got easier with the latest update to the RTx::Calendar extension for Request Tracker (RT). The extension has been available for a long time and the most recent release offers a nice set of new features that will streamline your scheduling and enhance your productivity. You can see some of these in action in the video below.

Demo of new features in RTx::Calendar

Events based on Dates and DateTimes Custom Fields

The new Calendar extension now allows you to use Custom Fields of Date and DateTime types. This powerful feature enables you to create customized date-based fields that can be associated with tickets, making it easier to track important deadlines, events, and maintenance windows within the context of your support and ticketing system. Whether it's tracking project milestones, service level agreements, or customer appointments, the ability to use custom date fields within RT's Calendar extension brings an added layer of flexibility and efficiency to your workflow.

Multiple-Day Events

The display of multi-day events and ongoing tasks is now much nicer with the enhanced Calendar extension. Instead of being limited to single-day events, you can now create and manage events that span multiple days. This feature is invaluable for managing multiple-day maintenance windows, complex changes, extended projects, conferences, or other events that require tracking over an extended period. You can easily visualize these events on the calendar, ensuring that nothing falls through the cracks.

Calendar Portlets for RT Dashboards

In addition to the existing one-week calendar portlet, useful for seeing recent and upcoming events, the new version of the extension also introduces calendar portlets that provide a full-month view right on your RT Dashboards. By integrating the calendar into your dashboard, you can stay organized and up-to-date without the need to navigate to a separate page.

Other Improvements

Finally, there are a set of other smaller updates. Events can be color-coded based on status and a status filter is available in the sidebar for seeing only desired events like "approved" or "rejected" events.

With these exciting new features, Request Tracker's Calendar extension is more versatile and user-friendly than ever before. Whether you're managing support tickets, project timelines, or customer appointments, the enhanced Calendar extension empowers you to stay organized and on top of your schedule. Don't miss out on these valuable additions that can significantly boost your productivity and help you better manage your organization's tasks and events.

2023-12-05

Creating Custom Forms in Request Tracker

As an early Christmas present to the RT community, we are happy to announce the release of a major update to our FormTools extension, which allows you to create custom forms in Request Tracker (RT). Read on for details on why you might want to create custom forms and what’s now available.

There are many ways you can allow people to create new request tickets in RT, the simplest being just telling them the email address of the queue you want the ticket in. Email is very easy and flexible, but it doesn’t allow you to collect organized information. If you’re lucky, the requestor might provide all of the information you need, but it’s in a block of text. If you want to organize this in custom fields, someone needs to manually read the email and update the fields. If you can give users an interface, they can do this work for you.

RT-Extension-FormTools has been available for many years as a library of helper tools for developers to create custom pages in RT. But that was the challenge, you needed a developer. And even when you had one available and got some forms built, updates required you to get their help again and code needed to be updated.

RT is very flexible and has many integration options, including a REST API, support for Zapier, and plain old email. Often users would use a custom external form builder tool to make forms and then use one of these integration methods to get the information into RT. That works, but the forms are usually hosted on a different domain, which can be strange for users, and it can come at an additional cost.

The latest release of FormTools allows RT admins to handle all of this right in RT and right in the browser. It gives you a form designer where you can create form pages with all of the fields you want users to fill out so you can organize and manage their request. And it gives you options to guide their experience, providing helpful instructions and making important fields required before the form can be submitted. We created a video with a quick survey of the new features.

Demo of the FormTools extension in Request Tracker.

We’ve gotten requests for a custom form builder for many years, so we think this will be a popular update. We encourage you to try it out and send feedback via our forum. As always, if you need additional help or have ideas for new features, you can always reach our team at sales@bestpractical.com. Happy holidays!

2023-11-27

RT 5.0.5: Scrip Logging in the Browser

RT 5.0.5 has a new feature for all of the RT administrators who wish there was an easier way to see logging information while working on customizing a scrip. The new configuration option LogScripsForUser does exactly that, it allows you to enable scrip logging just for your user so you can see what is happening while working on a custom scrip condition or action.

Viewing RT scrip log output in the browser

As shown in the video, you can enable this while working on some new code and output debug information to confirm your code is all working. When you’re done, you can disable the logging again. Or, you might leave logging enabled but set the log level to warning or error. Then you should only see output if the system encounters some kind of error. You can then visit your scrips page occasionally and confirm all of your scrips are running cleanly and without problem.

Still need some help with that custom scrip even with the new logging feature? We’re always here to help. Just send email to sales@bestpractical.com and we’ll get you moving on your next project.

2023-10-24

RT 5.0.5 and 4.4.7 Now Available

RT version 5.0.5 is now available, along with RT 4.4.7. In addition to a batch of updates, new features, and fixes, there are several important security updates provided in these releases. Details on these fixes are in the release notes linked in the forum posts below. We recommend that all RT users upgrade to get these security updates.

We are also recommending an update to your web server configuration. Your Apache or nginx (or other web server) configuration is managed outside of RT, so we can’t update it automatically as part of the upgrade. Details on the recommended changes are in the forum post and also in our updated documentation.

Select Different Users for Saved Searches

But this release isn't only about security updates, we have some new features also. One is a new dashboard component that allows you to select a different user to display tickets in searches like "10 Highest Priority Tickets I Own". Normally that search shows tickets owned by the currently logged in user, so you'll see your own tickets. Using the new __SelectedUser__ placeholder and the new dashboard component, you can now get that type of search to show tickets owned by other people. Check out the video below to see it in action.

We think this will be very helpful for project managers keeping track of tickets for multiple different team members. We've been using it in our RT for a few months and it's a big help.

Upgrade Planning for the 4.4 Series

As you plan your upgrade, note that the 4.4 series is very much in maintenance mode and receiving only important bug fixes. For example, the new feature above is only available in RT 5.0.5.

We are not announcing the end of life yet, but if you are still running version 4.4, you should start working on your plans to upgrade to RT 5. Plus you’ll get a bunch of new features!

Need Help?

It's always good to keep your system up-to-date, but upgrading is especially important when there are security fixes. If you run into any problems or have questions, our team is always ready to help at sales@bestpractical.com. And remember, we offer managed hosting if you'd like to let us handle the upgrades for you.

2023-08-24

The worst thing you never knew you knew something about

Before you even get a chance to roll your eyes, let’s make sure of one thing: we’re not talking about multitasking. That’s been talked about forever, mulled over, and thoroughly dissected. And while multitasking is a pain, a source of frustration, and a rabid consumer of productivity, we’re not here to talk about that. We’re here to talk about its younger sibling--the even more annoying one. We’re talking about context switching.

While context switching is a form of multitasking, it’s certainly not the traditional form of multitasking you’re used to. This isn’t about distractedly trying to answer emails during a conference call. Shaving while you’re driving. Texting while walking the dog. It doesn’t take a supergenius to know that the quality of each task suffers, but the extent of the problem might come as a shock.

As the American Psychological Association points out, there are three types of multitasking:

• Classic multitasking: Trying to perform more than one task at a time.

• Rapid task switching: Going from one task to another in quick succession.

• Interrupted task switching: The worst. Having to switch from one task to another, before the first task is complete.

Interrupted task switching is particularly bad because it’s often the most distracting, is almost always controlled by external factors, and is likely the most harmful offender in terms of both actual productivity and the *feeling* of productivity. While the first one is pegged by Inc. as costing something like $4.5b, that latter feeling just might cost you your long term wellbeing.

Even worse than that (and this is where the diabolical little sibling part comes in)? Most people aren’t even aware this thing exists. They can hardly name or recognize this process. Interrupted task switching, a.k.a. context switching, costs a lot. Again from Inc.:

• We spend an average of just 1 minute and 15 seconds on a task before being interrupted.

• It takes an average of 25 minutes to resume a task after being interrupted.

• Heavily multitasking can temporarily lower your IQ by up to 15 points. Crazy, right? It’s literally making us dumber.

So clearly, the only thing we can do is abolish all interruptions by living inside a bubble on the top of an unpopulated mountain. Well, kind of, actually. It turns out that it’s pretty hard for all of us to focus intently on one thing and then shift to deep focus on another. We can mitigate this harshness by combining like-minded tasks. Try to have all your meetings in one day, for example. I, personally, like to do all the paperwork sorts of things on one particular day. Or maybe you have a social media responsibility. Try to do the catching up, the scheduling, and the posting together. Research shows that “batching” like-minded tasks makes us able to tackle more initiatives—and, better yet, finish them!

We’d be remiss if we didn’t talk about the elephant. It’s email. Email is one of the biggest distractions of our day. As the Harvard Business Review points out, you shouldn’t use your email inbox as a task list or tracker. Email is probably contributing to more task switching than you realize. That’s why you ought to schedule email triage time.

This is where the game can be changed: send everything to Request Tracker! Whether the bulk of your emails relate to ongoing projects, new tasks, or customer service-related things, Request Tracker ensures every email, request, and action item gets the attention it deserves. All the to-do mail gets sorted automatically. Even better, you can silence those pesky notifications that play on your FOMO. It’s worth noting that even having just notifications come through can foment some FOMO feelings. Best to simply flip your phone over and close out of email when you’re not in triage mode.

Beyond triage and at another, deeper level of email management, Request Tracker provides a comprehensive toolset for request and task management compared to traditional email:

Centralized Task Management: Unlike scattered email threads, RT provides a centralized system for email and, well, lots of things! Viola! Less clutter, more clarity.

• Due Dates and Service Level Agreements (SLAs): Request Tracker allows you to set and highlight due dates and can also be configured to adhere to SLAs. Much like the squeaky wheel, flagged tickets approaching or exceeding their resolution times more often get the grease.

•Internal Comments & Collaboration: RT offers a suite of features where team members can add internal comments not visible to the client or end-user. This allows for private team discussions and brainstorming within the same ticket interface. Multiple team members can simultaneously work on a ticket, and all history is kept there for everyone’s benefit..

• Custom Fields: Unlike normal email, which has a standard set of fields, RT allows you to add custom fields tailored to your specific needs, enabling more detailed ticket categorization and tracking.

Which brings up a final thought: if you’re fried, brain dead, or otherwise spent? Don’t give up on staying useful! Everyone has tasks that are necessary to do, but don’t require much critical thinking. Tackle those when you realize it’s the best you can do. Focusing on a mundane task actually centers your brain, and allows you to start thinking more clearly again.

We can’t eliminate interruptions, in the end. Honestly? We probably wouldn’t want to. A lot of the good stuff in life happens there. But we’d be better off to make sure we have the right tools around us, like Request Tracker, a decent plan, and the willingness to implement what we know can make the proverbial lemonade. It’s quite possible to control things on our end to make interruptions work better *with* you, rather than against you.

Got experiences to share? We’re all ears! Good or bad, we’d love to hear your thoughts. Find us on Twitter (@bestpractical)! Even better—can we help your team ditch the shared email inbox? Schedule a demo today!

2023-07-25

Cover your Assets

Let’s say you have a sales team of 16. Janie has a laptop, a phone, a desktop, and an old iPad she scrounged from an intern’s desk for a one-time need. Jamal has two phones (don’t ask), one new and one “broken” laptop, and keeps insisting he needs a desktop even though he’s never in the office. Ron, on the other hand, is something of a Luddite, uses an old flip-phone he owns himself, and barely does his reporting at all—let alone on his laptop.

Do any of these people sound familiar? Are you in an office or lab like this? Your company, presumably, owns these assets (and a pretty vast number of others), paid for them, and is (or ought to) managing them. But who’s really doing that? Who’s putting on the IT inventory hat to keep up with an unending, ever-changing landscape?

Historically, most of the IT assets rested within an organization’s domain. However, now with a boom in remote work and the lessons from Covid, the challenges of managing IT assets have multiplied. Hardware has left the building and new apps and services multiply. One of the biggest challenges with the proliferation of services and technology is that assets often get tracked in a lot of different places by a lot of different people. Often, no single person owns everything, let alone has visibility into all the systems. And without the right tools in place, no single platform collects and centralizes asset data across your organization. How can you make informed decisions without a clear picture? This is where a robust solution is critical. Your boss’ Excel spreadsheet is not a robust solution, by the way.

It’s worth noting here that many organizations don’t merely have a need for better asset management–they have a mandate. Recently in New York state, a school district was audited for its inability to locate any number of pieces of hardware. In this case, at least, they had tools in place, but used them inefficiently. Many organizations simply do not know what assets they own, what shape they’re in, or where they’re located. 

The good news is that implementing a system for robust asset management doesn’t have to be either complicated or costly. Request Tracker is a widely supported, open source asset tracking system, among other things. You and your team can confidently know what assets you have, who has your assets, and where your assets are—all from one place. You can even easily import your boss’ Excel spreadsheet! With options for email and self-service portals and built-in reporting, you could even build a documentation culture! Imagine that! Anyone can play along!

One of the most powerful advantages to using Request Tracker (RT) is that it’s almost infinitely customizable. You get to set up an asset management system that works for you. As always, and unlike other products in the market today, RT never gates its features. Your team gets every feature there is right out of the box. Also, being open source, there are no per seat charges. RT scales at your pace. 

Perhaps best of all? Request Tracker offers a free trial so that you can spend actual time in a fully-functioning program. See how your team can explore new asset tracking capabilities with Request Tracker.

2023-05-04

May the Fourth Be With You! RT 5.0.4 Now Available

Request Tracker (RT) version 5.0.4 is now available and we thought it only made sense to release it on May 4th. It includes several new features, bug fixes, and upgrades. As always, we recommend all users upgrade to the newest version. If you’re not comfortable performing the upgrade on your own, we are always here to help! Shoot us a note and we will find a time to connect and get the ball rolling.

Our forum has details on where to find the new release. In addition to download information, you'll find links to detailed release notes. Here are a few new features to look for in the new version.

Ticket Search Results Updates

We've made a bunch of updates to search results to make it easier to quickly find the tickets you're looking for, and you'll see these right away.

Search results with a filter and sort

Filter on a Column

The column headers in ticket search results now have a filter icon next to them and you can click and add a filter on that field. So right from search results you can refine your search by adding additional search criteria. Any columns that have a filter applied are filled in after the filter is applied.

Filtering on Status in Search Results

Selected Sort Order

Column headers also now show which columns the search is sorted by, and which direction. RT has always allowed you to apply multiple sort orders by clicking on the column title. Now you can see which columns are being used for the sort and which direction, ascending or descending.

Pagination

The display for navigating to additional pages on the bottom of search results has been updated to use Bootstrap styles and also allows you to jump directly to a specific page.

Permalink and Shortened URLs

The RT search interface now uses shortened URLs, making it easier to share a search with a co-worker in chat or email. There is also a new permalink option to retain a search when you share it. Saved searches are still available for searches and charts that you expect to edit in the future or use in a dashboard, and you can also get and share a permalink for a saved search.

RT Administration Updates

RT administrators who have been using the web-based configuration UI will be happy to see the search box on the configuration page, making it much easier to find configuration options. And as before, the title for each configuration option is still a link to the documentation, so you can quickly get more information about what that option does.

Searching for a configuration option on the System Configuration page

On custom fields, you can now set a custom message for any validation rules you may have configured. Previously you could include a short description of the rule (like Mandatory), but now you can provide more detail which will display next to the custom field so users know what is required.

Asset Custom Roles

Assets come with three roles by default--Owner, Held By, and Contact--but you might want to track some other relationship with an asset. Custom roles can now be used with assets, so you add whatever new roles you need. For example, if you're tracking laptops and desktops, you might add a new role "Support Tech" to track the person assigned to patch and maintain those computers.

Use the Force

Everything you need to upgrade is always included in new releases, so we encourage you to plan upgrades soon. The full release notes for all releases are available with details on what’s changed, and some additional information is posted on our forum. If you need a hand, Best Practical offers Cloud RT, migrations, upgrades and professional services, just get in touch with us at sales@bestpractical.com and May the Fourth be with you!

2023-03-13

OpenAI and Request Tracker

Photo by Levart_Photographer on Unsplash

We have been following the buzz around ChatGPT along with everyone else, and had some internal discussions about how we might use OpenAI with Request Tracker. If you have somehow missed all of the news around OpenAI, we decided to ask ChatGPT to introduce the topic for us, and it came up with this:

Organizations are looking for ways to improve their customer support and ticket management processes as the world becomes more connected and customer expectations continue to rise. One way to do this is by leveraging the power of AI and machine learning. OpenAI, the company behind ChatGPT, provides AI technology, including language generation and natural language processing algorithms that can make Request Tracker (RT) more powerful.

OK, that's pretty good for an AI, but how would you actually use it? As a start, we created a simple action in RT to call OpenAI and perform sentiment analysis on the contents of example support emails. Based on the result, we thought we might better understand how a customer might be feeling.

What is Sentiment Analysis?

Sentiment analysis is the process of analyzing text to determine the emotional tone or attitude of the writer. It can be used to identify whether a customer is expressing positive, negative, or neutral sentiment, and can be a valuable tool for improving customer support and engagement. Sentiment analysis can also help organizations identify trends and patterns in customer feedback, which can be used to inform product development, marketing campaigns, and other strategic initiatives.

Edit: 6.14.23. It’s worth noting that in the ever-changing AI ecosphere, any number of concerns about the safety and uses of AI technology have arisen from more than a handful of communities. Today, the European Parliament adopted its negotiating position on what it calls the Artificial Intelligence Act.

Generally speaking, the new rules would ban AI systems for social scoring, biometric categorization, and emotion recognition. Negotiations with the Council on the final form of the law will begin later today.

Integrating OpenAI with RT

To integrate OpenAI with RT, we can added a custom scrip to run when a customer replies on a support ticket. We use the Perl module OpenAI::API to call the OpenAPI service and get a sentiment value back: positive, neutral, or negative. Then we store it in a custom field for easy reference. Here's a video showing our demo in action, testing with a few different types of replies.

Calling OpenAI from RT

Doing more with OpenAI

Once you have the sentiment value, you can think about other ways you might use it. The simplest is reporting, allowing you to see how customers feel at the end of their support interaction. But you could also take action, like routing "negative" tickets to more experienced staff or following up later with customers who had their question answered, but remained with a "negative" sentiment.

And sentiment analysis is just one of the many things you can do with OpenAI. You could ask it to summarize long support questions, suggest possible solutions, or maybe provide a summary of previous support interactions with the same customer.

Interested in using OpenAI with your RT?

This was a simple demo we did as we saw all of the news about ChatGPT, but there are definitely some real-world use cases for this type of technology. If you'd like to get more information on this or want to discuss how leveraging OpenAI with RT might be beneficial to your organization, send us email at sales@bestpractical.com and we'd love to "Chat".

2023-01-24

Are you looking for help managing your customers’ requests and feedback? Look no further than Request Tracker’s Customer Self-Service portal. This user-friendly feature allows your customers, clients, and external users to create, update, and manage their own requests and tickets, which will improve the productivity and effectiveness of your support team.

Your customers can receive real-time updates on their requests and communicate directly with support reps through RT’s customer portal, which can help improve your services and adhere to customer service level agreements.

Not convinced yet? Here are some of the other key benefits of using RT’s customer portal:

  1. Provides a central location for customers to access information and resources, making it easier for them to find the answers they need.

  2. Streamlines your customer support process. RT’s Customer Portal can help reduce the time and effort required to provide assistance.

  3. A well-designed customer experience can lead to increased customer satisfaction and loyalty.

  4. Increases your support team’s efficiency. RT’s customer portal provides self-service options and access to FAQs that can help reduce the workload on support teams.

According to Salesforce.com, “39% of millennials check a company’s FAQ first when they have a question, showing a clear preference for finding answers on their own.” Don’t fall behind in this key demographic –  Click here to get started with a free trial of RT and see RT’s customer portal in action.

2022-07-13

RTIR 5.0.3 and 4.0.3 Now Available

Request Tracker for Incident Response (RTIR) versions 5.0.3 and 4.0.3 are now available. These new releases provide security updates, bug fixes, and some new features. As always, we recommend all users upgrade to the newest versions. Our forum contains details on all of the new releases, linked below:

When upgrading RTIR, you also need to upgrade the underlying RT version as well. New releases of RT 5.0.3 and 4.4.6 are also available and they also contain security updates.

In addition to the security fixes mentioned above, version 5.0.3 contains some new features we think RTIR users will be interested in.

RTIR Homepage is Now a Dashboard

Just like the similar update in RT 5.0.2, the home page in RTIR is now a dashboard, making it even easier to create multiple different homepage configurations and allow users to pick the one that works best for them. Existing homepages are automatically converted as part of the upgrade process. After upgrading, you can set your default using the same gearbox icon in the corner.

Support for CVEs

RTIR now has a CVE custom field by default. As with IPs, scrips now look for CVEs in incoming messages and will automatically set the CVE custom field if any CVE ids are found. When looking at incident tickets, if a CVE is set, a new CVE portlet pulls in information about that vulnerability from the NIST database. It shows selected fields right on the Incident page and links you to the full entry so you can view the full details.

CVE portlet on an Incident page in RTIR

Mandatory On Transition and Time Tracking

This release of RTIR adds compatibility with two popular extensions that are often used with RT.

RT-Extension-MandatoryOnTransition allows you to set rules, like making some fields required, on specific status transitions. This is very helpful when you want to allow people to create an incident without filling out all custom fields, but you want them to fill them out before the incident is resolved.

RT-Extension-TimeTracking adds more inputs for tracking time on specific dates and also provides a "time sheet" type page with hours across all tickets for a week.

New versions of both of these extensions have been released and they can now be used with RTIR 5.0.3.

MISP Integration

Updates in RTIR 5.0.3 also add support for an integration with the MISP threat intelligence sharing platform. We'll have more information on this extension later, but you can use it today.

Upgrade Help

Everything you need to upgrade is always included in new releases, so we encourage you to plan upgrades soon. The full release notes for all of these releases are available with details on what’s changed, and some additional information is posted on our forum. If you need a hand, Best Practical offers RT hosting, migration, upgrades, and professional services, just get in touch with us at sales@bestpractical.com.

2022-07-13

RT 5.0.3 and 4.4.6 Now Available

Our newest versions of Request Tracker (RT) are now available, providing security updates, bug fixes, and some new features. As always, we recommend all users upgrade to the newest versions. Our forum contains details on all of the new releases, linked below:

In addition to download information, you'll find links to detailed release notes. Here are a few updates to look for in the new versions.

Custom Field Groupings per Queue

RT has long allowed you to name groups of custom fields to make your ticket pages easier to read and edit for users. Starting in RT 5.0.3, you can now scope these groupings at the queue-level in addition to globally. So if you want to specifically name a group of custom fields only in one queue, now you can do that.

Database Query Improvements

We made some updates to database queries to better use bind variables, and that should be most noticeable for people running RT with Oracle. The good news is it should also help all other databases as well.

HTML Custom Fields

A new HTML type custom field is now available as an alternate version of the text area custom field with regular text. We created this primarily for articles, so you can now use the Rich Text editor to edit your article content and the styling you add will show up in your HTML email when you use the article.

Editing an article with an HTML custom field

We have additional plans for HTML custom fields, but right now you can switch the render type for your article custom field if you are using HTML templates for outgoing email from RT. You can then use the editor to set various styles and they will all be set when you select that article to include in a response. If you're not familiar with articles in RT, you can read more in our introduction to articles.

Interface Used for a Request

Sometimes when creating scrips to automate something in RT, you may want to have different rules if a transaction comes in via email or the web interface. Previously you could check for the X-RT-Interface header in transactions to identify email or web requests, but these worked only for updates that had a message included. Now you can call a method RT->CurrentInterface to find out how something was submitted. As noted in the documentation, this covers email, web, REST calls and more.

Upgrade Help

Everything you need to upgrade is always included in new releases, so we encourage you to plan upgrades soon. The full release notes for all of these releases are available with details on what’s changed, and some additional information is posted on our forum. If you need a hand, Best Practical offers RT hosting, migration, upgrades, and professional services, just get in touch with us at sales@bestpractical.com.

2022-06-23

Request Tracker Integration with PagerDuty

Photo by Mitchell Luo on Unsplash

If you support critical services and manage your work in RT, you may have cases where you need to escalate notifications beyond sending email or even text messages. PagerDuty provides a wide range of notification options including email, automated phone calls, SMS, and notifications from their mobile apps. RT::Extension::PagerDuty provides a full two-way integration to communicate status updates like acknowledgement and resolution between RT and PagerDuty.

Demo of RT integration with PagerDuty

PagerDuty allows you to set up on-call schedules, so the right person gets notified and not everyone on the team gets alerts. You can also set up escalations to automatically notify someone else if an alert hasn't been acknowledged within a period of time. Integrating with RT allows you to acknowledge and resolve alerts, and continue to track tickets along with all of your other tasks in RT.

Got questions about managing your key services with RT? You can send us email at sales@bestpractical.com, we're always happy to help.

2022-05-19

Google Email (Gmail) Authentication Changes

Photo by Brett Jordan on Unsplash

Similar to updates by Microsoft for Office 365 email discussed previously, Google also has announced they will discontinue support for username/password authentication on May 30, 2022. If you use Google-hosted email, this may cause your email integration with your Request Tracker (RT) instance to stop working. Keep reading for some options to update your email integration.

As described previously, you can integrate email with RT by pushing (forwarding) email to the RT server or by pulling (fetching from a mailbox on the mail server). As noted in the linked post, if you were pulling email and are impacted by Google’s changes, one option is to convert to forward email from Google to your RT server. This approach has various pros and cons as described in the earlier post, and it would involve quite a few configuration changes.

If you are currently using the pull method with a utility like fetchmail or getmail, it’s easier to try to update your system and try to stay with the same approach. To do so, you’ll need to update your system to start using Google’s recommended OAuth2 authentication. This is currently possible with newer versions of getmail.

Version 5.6 or later of getmail come with a script called getmail-gmail-xoauth-tokens which you can use to set up the needed Oauth2 tokens to continue to retrieve email. This version is available via packages on most newer Linux systems we have worked with recently. We have used this successfully with RT integrations so far and have posted our Gmail configuration notes in our public wiki . Currently this getmail configuration seems to be a workable solution to continue to pull email, however, Google continues to make changes, so it's possible additional updates will be needed through 2022.

Support for OAuth2 in fetchmail appears to be included in version 7, which is in development but not yet released. Documentation is available in their public repository. As a development branch, this isn't a solution for a production RT system for most, but shows support may be available in future versions.

Our App-wsgetmail utility mentioned previously continues to be available, but currently supports only Office 365. Since there is a functioning getmail option that works with Google email, we currently are not planning to add support for Google mail to the utility. However, in the future someone may prefer a solution that retrieves email via APIs rather than IMAP, so we may consider adding support at some point.

The notes linked above are on our public RT wiki and we welcome improvements to make the somewhat challenging set-up process easier to follow. If you need professional assistance with RT and your email configuration, you can also contact us at sales@bestpractical.com.

2022-03-07

Change Management in Request Tracker

Keep your change process running like a well-oiled machine (Photo by Laura Ockel on Unsplash)

One key component of IT service management is maintaining documented and repeatable change processes. The fundamentals of managing any change are the details around the change - like when is it going to happen, who is making the change, why are we doing it, and how do we roll back if there is a problem? RT is a great tool for managing all of this information, including communication to various stakeholders, so we have released a new extension with a pre-defined change management queue, configured and ready to use.

As with our HelpDesk extension, we identified change management as a common use case for many organizations running RT. To help speed up deployment, we have included all of the fundamental configuration in a freely available extension. Once installed, you'll have a dedicated Change Management queue, a custom lifecycle, and custom roles and custom fields to manage change information. Below is a short video that quickly demonstrates the main workflow.

Change management workflow in Request Tracker

The extension uses core RT features, so everything, including the lifecycle, can be customized and extended as needed using RT’s administration tools after you install. This allows you to align the workflow with your process and track everything you need, both to support the change process itself and for reporting later.

We hope this new extension helps to quickly get you up and running with change management, allowing you to focus on your process rather than implementation details. And if you’re just getting started with your change process, RT will help you keep things running like a well-oiled machine. To learn more about change management or how we can help you get the most out of Request Tracker, you can always reach us at sales@bestpractical.com.

2022-02-01

New Microsoft Office 365 Email Integration Option for Request Tracker

Photo by Ed Hardie on Unsplash

Update: On September 1, 2022, Microsoft updated their published schedule for deactivating Basic Authentication on cloud hosted email. Starting October 1, they will start randomly disabling authentication for Exchange Online. If you are running a service that uses Basic Auth to load email for RT, read on for options. See also this blog post with updated options.

As far back as September 2019, Microsoft began posting notifications that they planned to discontinue support for Basic Authentication for Office 365. A post in September 2021 set the date for them to begin disabling at October 2022. Even though it has been pushed out a few times, it is definitely time to have a plan to make updates if you rely on Basic Authentication to fetch email automatically on a server.

For RT users with email integrated with Office 365, this may mean that the existing email integration will no longer work. We are happy to announce that we have released a new utility called App-wsgetmail that will help replace some of the previous integrations.

There are two main approaches for integrating email with RT from Microsoft Exchange and Office 365: pushing email to RT or pulling email in from the RT server. The first approach involves setting up rules to forward or relay incoming email on selected addresses (like support@example.com) from the main MS mail server to the RT server. The RT server runs an MTA like postfix to receive the email and pipe it into RT. These configurations should continue to work without issue.

As organizations migrated from on-premise Exchange servers to Office 365, many moved away from the relay approach, either because the configuration was more difficult in Office 365 or because it was harder to lock down incoming email to the RT server once the MS email server was in the cloud. Organizations running RT often migrated to the second approach.

The second approach, pulling in email, is usually implemented with utilities like fetchmail and getmail, which act just like an email client by logging in and downloading email, but run automatically on the server. These utilities typically use Basic Authentication, which is the service MS is discontinuing. The challenge with converting automated utilities like these to the new alternatives like OAuth2 is that the new methods rely on prompting a user for a password. With an automated system, no one is there to respond to the prompts to set up the session.

To solve this challenge, we have released App-wsgetmail as an alternative that can use tokens to authenticate to the new MS Office 365 services and pull in mail. We created this primarily to route email into RT, so it currently only downloads email. You can then pipe the email to RT, similar to existing utilities. Allowing accounts to login in this way requires configuration on the MS Office 365 side and we have included documentation for this setup. We have found that there are several ways to enable authentication for MS services, so it's likely the current version doesn't yet cover all scenarios.

The utility doesn’t have anything specific to RT, so it can be used for any scenario that requires fetching email automatically on a server. For RT, you’ll use the “command” and “command-args” options to pipe each email into RT using rt-mailgate. This is very similar to the configuration you may have used with fetchmail or getmail.

We're very thankful to sponsors who made this new utility possible. You can provide feedback on our forum or submit bug reports via rt.cpan.org. Note that bug submissions are public, so please do not include anything that shouldn't be publicly seen (like login details, phone numbers, etc.). For professional assistance, you can also contact us at sales@bestpractical.com.

2021-12-13

Request Tracker (RT) and Request Tracker for Incident Response (RTIR) Do Not Use log4j

To assist security teams reviewing infrastructure for log4j vulnerabilities from CVE-2021-44228, Request Tracker (RT) and Request Tracker for Incident Response (RTIR) do not use Java or log4j, so are not impacted. RT also has no required dependencies written in Java, so log4j would not be sourced as part of installing RT or RTIR.

If you have installed additional software to integrate with RT, it’s possible these other software packages might use log4j, so we encourage teams to assess non-RT packages that may need remediation.

We have also assessed our infrastructure for our hosted customers and found we do not run log4j on our hosted servers. We host on AWS, so we are continuing to assess other AWS services we use as part of our hosting infrastructure, and we are monitoring AWS announcements as they provide updates on services. Based on current announcements, services we use for all hosting customers are not impacted.

If you are a Best Practical support customer and you have any additional questions, please feel free to contact support and we will provide additional help and details.