Chapter - 6 Maintenance

Crisper Learning for ServiceNow Continual Maintenance
41 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$69.99
List Price:  $99.99
You save:  $30
€67.24
List Price:  €96.07
You save:  €28.82
£55.68
List Price:  £79.55
You save:  £23.86
CA$100.66
List Price:  CA$143.82
You save:  CA$43.15
A$111.82
List Price:  A$159.75
You save:  A$47.93
S$94.88
List Price:  S$135.55
You save:  S$40.66
HK$543.79
List Price:  HK$776.87
You save:  HK$233.08
CHF 62.67
List Price:  CHF 89.54
You save:  CHF 26.86
NOK kr792.28
List Price:  NOK kr1,131.89
You save:  NOK kr339.60
DKK kr501.55
List Price:  DKK kr716.53
You save:  DKK kr214.98
NZ$123.71
List Price:  NZ$176.74
You save:  NZ$53.02
د.إ257.07
List Price:  د.إ367.25
You save:  د.إ110.18
৳8,328.16
List Price:  ৳11,897.89
You save:  ৳3,569.72
₹5,958.01
List Price:  ₹8,511.81
You save:  ₹2,553.80
RM314.25
List Price:  RM448.95
You save:  RM134.70
₦108,236.03
List Price:  ₦154,629.53
You save:  ₦46,393.50
₨19,398.69
List Price:  ₨27,713.60
You save:  ₨8,314.91
฿2,394.21
List Price:  ฿3,420.45
You save:  ฿1,026.24
₺2,465.01
List Price:  ₺3,521.60
You save:  ₺1,056.58
B$426.13
List Price:  B$608.79
You save:  B$182.65
R1,290
List Price:  R1,842.93
You save:  R552.93
Лв131.30
List Price:  Лв187.58
You save:  Лв56.28
₩101,582.03
List Price:  ₩145,123.41
You save:  ₩43,541.37
₪254.54
List Price:  ₪363.65
You save:  ₪109.10
₱4,098.92
List Price:  ₱5,855.86
You save:  ₱1,756.93
¥10,967.38
List Price:  ¥15,668.35
You save:  ¥4,700.97
MX$1,406.50
List Price:  MX$2,009.38
You save:  MX$602.87
QR254.06
List Price:  QR362.96
You save:  QR108.89
P963.25
List Price:  P1,376.14
You save:  P412.88
KSh9,053.20
List Price:  KSh12,933.70
You save:  KSh3,880.50
E£3,568.78
List Price:  E£5,098.48
You save:  E£1,529.69
ብር8,687.63
List Price:  ብር12,411.43
You save:  ብር3,723.80
Kz64,250.82
List Price:  Kz91,790.82
You save:  Kz27,540
CLP$69,297.02
List Price:  CLP$99,000
You save:  CLP$29,702.97
CN¥510.87
List Price:  CN¥729.84
You save:  CN¥218.97
RD$4,243.89
List Price:  RD$6,062.96
You save:  RD$1,819.07
DA9,435.69
List Price:  DA13,480.14
You save:  DA4,044.44
FJ$162.05
List Price:  FJ$231.51
You save:  FJ$69.46
Q536.99
List Price:  Q767.16
You save:  Q230.17
GY$14,580.66
List Price:  GY$20,830.41
You save:  GY$6,249.74
ISK kr9,757.30
List Price:  ISK kr13,939.60
You save:  ISK kr4,182.30
DH701.41
List Price:  DH1,002.06
You save:  DH300.64
L1,291.33
List Price:  L1,844.84
You save:  L553.50
ден4,135.36
List Price:  ден5,907.91
You save:  ден1,772.55
MOP$557.92
List Price:  MOP$797.07
You save:  MOP$239.14
N$1,283.07
List Price:  N$1,833.03
You save:  N$549.96
C$2,564.57
List Price:  C$3,663.83
You save:  C$1,099.26
रु9,479.94
List Price:  रु13,543.35
You save:  रु4,063.41
S/259.51
List Price:  S/370.75
You save:  S/111.23
K282.61
List Price:  K403.75
You save:  K121.13
SAR262.99
List Price:  SAR375.71
You save:  SAR112.72
ZK1,928.73
List Price:  ZK2,755.44
You save:  ZK826.71
L334.62
List Price:  L478.06
You save:  L143.43
Kč1,690.23
List Price:  Kč2,414.72
You save:  Kč724.49
Ft27,882.67
List Price:  Ft39,834.10
You save:  Ft11,951.42
SEK kr772.23
List Price:  SEK kr1,103.23
You save:  SEK kr331
ARS$71,547.27
List Price:  ARS$102,214.77
You save:  ARS$30,667.50
Bs481.59
List Price:  Bs688.02
You save:  Bs206.42
COP$305,890.51
List Price:  COP$437,005.17
You save:  COP$131,114.66
₡35,162.35
List Price:  ₡50,234.08
You save:  ₡15,071.73
L1,769.11
List Price:  L2,527.41
You save:  L758.30
₲543,432.39
List Price:  ₲776,365.26
You save:  ₲232,932.87
$U3,131.93
List Price:  $U4,474.38
You save:  $U1,342.44
zł286.59
List Price:  zł409.44
You save:  zł122.84
Already have an account? Log In

Transcript

Chapter Six, continue maintenance. In this chapter we'll talk about update sets, advancements performance and regulations, and social it updates. Update sets are collective changes bundled together that can be carried from one ServiceNow instance to another. It is simply an XML snapshot of recorded changes at a given instant of time. The changes from tracked tables are added to the customer update tables. The sis underscore update underscore XML.

Usually, the changes that have been verified thoroughly in an instance are transported to the other instance, in case of merging multiple updates acting on the same object. The changes that was made most recently will be sent to the new mortgage update set example of an update set. Step one, a group of enhancements to Problem Management can be grouped together in an update set and named as Problem Management 2.0. Then step two, while the Problem Management 2.0 is marked as the current update set, all changes are tracked into it. Step three. Once the update set is marked as complete, it becomes ready to be moved to the new environment.

Additional information usually the update sets are used in our demo test environment where the changes are tracked and once verified, it is moved to the prod environment. Another point worth noting is that the process records are successfully tracked in update sets. While data is not. Update sets have a limited scope in terms of their functionality. Example, a new record for an incident or change management will not be tracked with within the update sets. Data it needs to be transferred can be sent to other environment to fire export XML function.

A table of items which are tracked and are not tracked by ServiceNow update sets is shown in here. homepage edition edition of home pages to the updates that needs to be done manually following these steps. First, go to homepage admin and within the pages module. Then step two, right click the homepage record to be added. And step three is choose the unload portal page option. Version come back comparison ServiceNow also provides a way to come back are different versions of an object and revert back the changes using update dot sync actually attribute similar to business rules.

The version control is managed by version stable, which is sis underscore update underscore version. And with this user can customize the table view form, field, business rule and client scratch. points to remember, there are a few points a user must keep in mind for reverting to older versions. First, it's highly recommended to thoroughly evaluate the differences between two versions before reverting to the older version. Second, database changes can not be reverted back. And that user can only revert to the most recent base version and not older based versions.

A few recommended practices to make effective use of updates include, First, identify and plan ahead the common migration path for transporting changes to the new environment. Next, keep the system administrators can look for the changes being worked upon. Next, include single set for many changes, having multiple sets may become hard to manage and migrate. Next, categorize similar items into small manageable sets with proper naming convention. And last, always preview the changes made by an update set before actual migration to identify any possible risks and conflicts. Merging update sets briefly just before multiple updates can be completed.

Into one single set. This feature specially becomes useful when many users are working on development of separate update sets, which can later be combined into one core easy transfer to the new environment. As mentioned earlier, in case multiple update sets modify same object, the most recent change will be moved to the merge updates and the rest of the updates are left in their original updates. After merger in case of collision, the duplicates remain at their original place. This provides user with an analysis on what was moved and what stayed behind. Once the transfer to the new environment is successful, it is a good idea to empty the original updates.

Sample use case six point One. In this use case, we'll see the steps to practically create and retrieve and update set. For this, we need two environments, say Dev and prod, like the development and the production environment. The first dev is where the updates that would be created and changes to the problem form attract. The second, the prod environment is where the updates that will be applied, and the intended changes would be verified. So, we have been working on this environment.

So we're going to consider this one only at the dev environment. So to create the update set, we go to system update sets and within it the local update sets right here, and we're gonna create a new update set. Now, we're going to add following details. So let's put the name as Problem form changes version 0.1 right and in the description, we are going to say that we are tracking the changes made on problem form that is adding updated and updated by fields before change request and removing the impact field. So, what we are going to do now once we have the update set all ready for us is that we're going to add two different fields the updated and updated by in our problem form and we're going to completely remove the Impact field. Right?

These are the changes that we're making to the forum. And so, for this, it's always a very good practice to provide a detailed description of the changes that you've been making to the forum. You know, and this provides a very effective way of tracking the changes as well. So once this is done, you have to click the Submit and make current so that this updates, it would be like the current upgrade set, which is this one in progress. Right. The quick notification you can see will it's already gone now, which will say that your current update sir has been changed to the problem forum changes version 0.1.

Right. Okay. Now next, we're going to go to the problem form and modify it so that the changes shall be tracked by the update set. So for this, we're going to go to problem and within the problem, we're going to go to create new Right, we have the form in front of us, let's actually maximize it because the other environment, we are going to work on it in a few minutes. So once we have it, we are going to go to context menu. And we are going to configure and go to the formula to understand the process, right.

And before actually going very, you have to make sure that the fields that you're adding don't exist in here, and that the field that you're trying to remove exists, like, right, this is the initial step that you need to have. So I'm going to add the updated and updated by after the change request, or before the change request. That's what we said, right? So yeah, um, depends. So let's put it afterwards. updated and updated by and I'm going to put them here and I can move them up right after the change request.

Right and the impact I want kicked out. So I'm going to kick out the impact field. And once these changes are done, I'm going to hit Save. Now you can see that you have, after the change request, you have updated and updated by field, and the impact field doesn't exist here anymore. Right? Now, the changes have been made successfully.

Now it's time to mark the update set as complete. So for this, we're going to go back to our system update sets. And in there, the local update sets. Right, and we're gonna open our record, which was the problem form changes version 0.1. Right. And now in the state field, we have to change it to complete but I also want to scroll down and show you that some changes have been locked in terms of the form layout, right insert or update actions.

So this, like the customer updates confirm that some changes have been recorded in the form layout. And the actions correspond to some insertion or some updation. Right, which is what we did. So now we are going to go to stage three, we're gonna market is complete. And once this is done, we're going to hit update. Okay, the system notification you can see, it's shown in here, where it confirms the Save Changes to the update set.

The name and name of the updates that shall be used to confirm that the modifications are made to the correct update set, which is problem form changes version 0.1 in this case, now with status, complete the updates that is now ready to be retrieved and executed in the other environment which is the production environment and recall Get to apply update set in production. First, check that the problem form in that, in that production environment has those, like doesn't have the fields that were inserted and has the field that needs to be deleted, right so that we can track the changes. So we're gonna go to our other environment. And in here, I'm gonna go to the problem form and see if those things exist or not. So you can see after the change request, I don't have the updated and updated by while I still have the impact fields, right.

So that makes a perfect use case. And now in our production environment itself, we are going to go to system update sets and update sources. It says update sources right To get, and we're going to click New to create a new instance. Now, we're gonna provide some name, and the name is going to be, let's say, updated. Problem, forum import. Right, that's what we are trying to do in here.

And then we have to provide the URL. So we're going to click on this padlock icon. And we have to provide the URL from where the import needs to happen. So I'm going to copy the URL of my dev or the test environment. And I'm gonna paste it in the URL field over here. Just make sure that you copy this correctly.

Right now you have to use the user ID and the password as well which like for the demo test environment, because the ServiceNow environment production Well, I'm just gonna access the particular instance, get its update set. And to access it, it needs to have the correct credentials. So it's gonna be admin, and I'm gonna enter the password that I have. Right? And for the short description, it's always good to have it. So you can say modified problem form with updated and updated by fields, and no impact field.

Right, this is pretty much what we did. Now, before actually submitting or saving it. It's, again a good practice to test the connection and see if the ServiceNow instance is able to access this particular tenant or not. So we're going to test the connection. And it says, As you can see, sometimes because these issues do occur It says that this nav page comes like this, this structure is not found. So what you're going to do is simply take this nap page out and let it be just demonstrates itself.

Now that's the connection. And it says connection is okay. Right? So the problem with this one is because, like, the version that we've been working on is the like the London version, while this production environment is the Kingston one, so there's a possibility for a mismatch, but that's not gonna happen. So we're simply going to hit save, and the same notification has been generated that's confirming that you know, the parents instances, totally different version while you know, the one that we're working on is different. That's not a problem.

Okay. So we can see that we have successfully established the connection between the two instances. And now what we got to do is we got to select this particular Update set, right the import set that we actually sort of created in here. And in the actions, we're going to choose retrieve completed updated set update sets. So once you choose that, it's getting all this all the updates and it just took two data sets retrieved and one was the auto incident form changes which was old, nothing which we are concerned about, I have because I this was an updated which I had already my instance and I didn't save anything much in it. But this problem form changes this is succeeded right and this is what we are concerned with.

So you can see that once it has been successfully completed, it confirms whether the update set was retrieved and everything was fine or not. So we're going to close this progress bar. And now to view the retrieved updated set. We are going to go to the retrieve the bait sets within the update the system update sets application. So we go there, and you see that you have it available, the problem form changes version 0.1. Right.

And the current state is being shown as previewed. Now we're going to click on this to open this. And once we have it opened, you can actually close these notifications, these are all notifications. And all you got to do to make changes is to commit the updates. And the changes that you made in your problem form in the dev environment would be reflected in this production environment as well. So we hit the commit button, and it does it because you know the changes were not too many.

So it was pretty fast property within a second itself. They will change it the commit option operation on the updates that was done, but it may take a few minutes to get all the changes done. Right in case when we have been tracking a lot of lot of changes in our, you know, forms or or any other changes that you may do in your ServiceNow instance. So, you're going to hit close and to confirm that the updates that worked correctly, we are going to create a new problem. And we're going to see if we are able to see those changes that we are supposed to in here or not. So, you can see the updated and updated by fields are available while there is no impact field, which means that the updates that come it happened perfectly fine.

Advancements performance and regulations. Service now follows a legible upgrade process provides view for performance analysis of the system, and various system considerations for optimal usage. ServiceNow release cycle ServiceNow is a stable platform with continuous enhancements and features for extended usage. The release cycle provides an efficient way to log any environmental problems and provide new features to its users with ease. Similar to other enterprise applications like Oracle ServiceNow uses the family approach, which contains first the new feature releases with advanced capabilities and extended capabilities to current features. And second is the delivery of hot patches and fixes to known bugs.

Additional Information Service now follows a self management methodology where the new updates get automatically added to the user instance, when a new build is developed by ServiceNow development team and is assigned to the user instance. The instance automatically installs as downloads the vor w AR, which is a web application archive file after about an hour of its assignment. Once the Apache Tomcat web server supporting the instance is restarted, the changes are applied to the database. In case no upgrade requests are needed by the ServiceNow user, the customer may submit requests for the same to ServiceNow support team. And once granted, any new updates to the ServiceNow platform will not be automatically applied to the specific instance ServiceNow release phases, there are three phases followed for which ServiceNow customer and partner like interact after each ServiceNow release. The first is the early access to the new build via exclusive invitation only.

Second, the phase two is the voluntary or automatic upgrade. based on specific dates availability, and third, the volunteers, again voluntary on demand or the automatic upgrade. Once that becomes the norm, additional information ServiceNow releases come under major city names like Aspen, Berlin, Calgary etc. The hot fixes and patches are also released with the rolled out version name in them. Example, Berlin patch two hotfix one belongs to Berlin family customers and intimidate consumers are usually intimated intimated prior to each ServiceNow release what the name is going to be and how it has been used. Upgrade exemptions, customer customizations usually remain intact during the upgrade process.

When an object is modified. A corresponding record is added in customer updates table which is the system underscore update underscore XML. This table incorporates the latest version of information across all objects customized as per user needs. the upgrade process automatically skips changes to the objects available within this table. Upgrading upgrade history record ServiceNow tracks each and every upgrade made to the system, thereby providing the way to locate changes and manage conflicts by reverting to base version if needed. release version ServiceNow system administrators can check the current version and release of running ServiceNow instance by going into the system diagnostics application.

Within it we have the status label and then the stats module. This can be confirmed with the values next to build name, build date, and build stack as shown in here. Note along with release information, stats also contain serve like memory semaphore set and response time information. Check system upgrade. To check if the system upgrade was executed successfully, we can go to System logs and within the application the events module and we can locate the event system dot upgraded. Similarly, to check if a patch has been applied to the instance correctly, look for system dot patch event.

Note, in some cases, the event may have a state of error. This doesn't necessarily mean that the upgrade was unsuccessful. It simply confirms that the notification for completion was not sent successfully. And there may be several underlying reasons for it in this case, it's advisable to check system diagnostics, and in that application the upgrade log, and we can locate the message that confirms that upgrade has been completed. In order to receive notifications each time a new build is available, go to System notification application, and within an email, the title and the notifications module and locate system upgraded notification. configure it by adding more users to receive the corresponding notification and save the changes.

Performance metrics, there are four parameters onto which the efficiency and performance of a ServiceNow instance is evaluated. These include, first the application server response. It is the time taken by the application server to process a user request and display the output message as the result The output page. Next is the network latency. It is the speed at which network processes the request and generates response for it. Next is the browser rendering and parsing.

This is the time taken by the web browser to render the HTML code and parse are executed. Last is instance cash is the amount of system resources available for execution. system administrators have easy access to the stats corresponding to response time for each transactional process. To check it out, simply type system logs in the application navigator and click the transactions module. The displayed list stores each and every activity that took place on a web browser as a separate record. The major information in each record includes First created, which is the date and time when the transaction took place.

Next is created by which is the user who performed the transaction. And last is the response time, which is the time taken by browser to respond to the user request. Client transaction log. In usual transaction log, each redirection within the web browser is considered as a separate transaction and is recorded accordingly. For client transaction log, the operation is not logged at the granular level, but rather at a consolidated level. For example, in a login operation, the process of typing credentials for authentication, redirection to other transaction after authentication, and loading of homepage are recorded as three separate transactions in each in the transaction log.

While they are recorded as just one single transaction in client transaction log calculated response times, there are various types of calculations that can be shown to major computation of fields within transaction logs, such as client response time, sequel time, network time and browser time. To view max value, minimum value total or average of these field values, simply right click on the field header within the transaction log list and choose configure and with an empty list calculations option. Once it is clicked, the calculations option get displayed. If we can choose the required checkboxes and hit OK. Response Time indicator, a response time indicator may be visible at the bottom of a form or less. And it shows the amount of time taken by a transaction for processing.

The processing time for a transaction comprises of three elements, namely network Time, applications server time and browser time. For example, in the figure shown here, the total time taken for the transaction is 608 milliseconds, which includes three milliseconds of network response time for 46 milliseconds of server time, and 159 milliseconds of browser time. Note, in general, this is not a norm but generic generically speaking, total response time being less than three seconds, and the server response time off less than 100 milliseconds is considered to be an efficient transaction. Stats module, stats file contains key metric information to baseline and monitor ServiceNow performance. These include servlet, memory, response time and available semaphore sets. disserve like memory, this metric indicates the usage of memory by ServiceNow instance, a percentage of free space value between 10 to 60% is normally considered optimal.

If the free percentage is below 10 for a longer period, the instance may behave in efficiently and slowly semaphore sets semaphores metric regulate the maximum number of transactions that can be executed by service now, concurrently semaphores act as individual gateways for each transaction and ensures that the system resources are not over utilized. response times. This metric provides the server response time like network time and client browser time. ServiceNow performance homepage there are Various graphs that can be displayed in ServiceNow to analyze system performance, these graphs can be accessed under self service application and within the homepage module and from the content frame, we have to choose the diagnostics option and under it the ServiceNow performance data. The view for the metrics can be modified by choosing different graph sets, monetary items, timespan, etc. Each graph provides different view of system performance for better analysis through visualization.

The system overview graph. This graph provides the overall health diagnostic of the ServiceNow system each second, the system records the performance of all active threads, averages them each minute at both UI and back end level and puts it in the database sessions graph, as shown in here displays the number of sessions in an application, and how many are still logged in with an active session. And similarly, the transactions graph provides the number of transactions for users to keep an eye on response time. This is the most crucial key metric to analyze the system performance. It is recommended to get a baseline and take max value for an average system performance analysis. If the values spike over the value of thousand for a large period of time, it is recommended to contact ServiceNow support team.

Social ID social ID is provided as a separate plugin, which installs new components such as tables and fields, business rules, strips them more data events, notifications, etc. without impacting the existing ServiceNow configuration. Social ID provides a great way on intercom communication through various features such as short term polling, live feeds, common boxes, etc. live feed, live feed provides the interactive way of sharing content within the form through ServiceNow platform. Depending on the accessibility rights, a user can access different types of feeds, join groups and share information among groups. There are several groups within live feeds which a user can access and share information with.

These groups are broadly categorized into two types, public groups that are accessible by everyone. Anyone can view and join defeats in it. Messages displayed as live feed also display a link to the group feed. And the next is private groups that are viewable by everyone. But only authorized users can join it and access feeds inside it. Messages from private groups don't display link to the group feed.

Removing posts from live feed. system administrators can control the posts and content that shall be circulated within a company. They are authorized to delete any inappropriate posts they feel like so this we can go to collaborate application within a dp administration and under in the messages module, and open the message that the system administrator intends to delete. Once opened, all you have to do is simply click the Delete button as you can see in the screenshot, Additional information. system administrators can also simply hover over the post on live feed, and delete it by clicking the Delete current as shown in here. Sample use case 6.3.

In this exercise, we create live feed to automatically post high priority incidents. To accomplish this, go to collaborate and within it the feed administration. And then we have the top table notifications. So right here like feed feed administration and cable notifications, right. And we are going to open the incident with the you know the description as the high priority incident. Right.

So once we have it open, all we have to do is we have to check the active checkbox so that this becomes active and We have the update fields as well, which means all the updates need to be provided. So look up for the feed value. And in this feed value, we visit the displayed list. We're going to click on the new in here. So go there and in this live group profiles just hit me right now provide the name as let's say priority one incidents. And the short description is anything you want incidents.

Alright, now we're going to hit submit and the light table notification form is all set and we are going to hit update Now to see the configured live feed setting working correctly, we're going to open the last RP prototype incident and change the value of impact and urgency fields to high. So let's open that. And here we are going to so if you are not able to see the impact field course, you know the drill, but let's change at least the one that we have for now, which is the urgency and we're going to make it high. Right now go to configure Okay, well should update, update and impact. Let's put it a little below the update and update our above the update and hit save. And we're going to update it as high and urgency is one high as well.

Right? And we can add any additional comments that we may want to put in in the you know, in the work notes column by in the additional comments section, which is customer visible by let's say pro Joe tight, still not recovered. Right. And now we're going to save the incident. Save. In case this is it says the subcategories not available so let's put it as email right And the agencies to their impact is good and production not recovered.

And you'll have to have work notes as well. So, you can put the same ones and now hit Save Okay. Now, to verify that this incident is shown as opposed on the live feed, we are going to go to collaborate and or engage to collaborate is not telling you directly have live feed because system ServiceNow has, you know, Incorporated these features in here itself and in just a few seconds of time frame itself, when you go to my feed with this load, and you can see that three minutes ago, a high priority incident open which said The short description was that last RP prototype, right? That means it is available now. Awesome. Now in the end, let's update the live feed confirming that the last prototype has been found.

So for this, we are going to impersonate ourselves as the ideal user, which has the fulfiller role. And to that lesson, okay, and we're going to open the incident and, and last RPA right in here, right. And once we have it, once you have the incident open, we can click Show activity stream this one and here's the activity stream and in the original comments, We are going to say that your product has been found. prototype has been found in, let's say a separate folder or something. Right. And we are going to check the work notes option in here because, you know, we need to add these work notes, and we're simply gonna hit post.

Right. And you can see that the ITIL user has confirmed that the project has been covered in a separate folder and to confirm, you can go back being by impersonating as the system administrator. You can check the live feeds and see that the update has been made. They're slow. It may take a few minutes to get it updated, but it is usually pretty fast. Here, you can see that, you know, the actual user has just confirmed right?

You can like it, you can comment on it, you can copy the link for it. That's totally up to you. Alrighty, so with this, the ServiceNow tutorial is concluded. please do let me know how you found it. If there is something that shall be updated or modified to cater to your requirements, please do let us know feel free to post any comments, feedback, your questions and thank you very much

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.