Forum Discussion

richard_polyak's avatar
richard_polyak
Icon for Altocumulus rankAltocumulus
Jan 09, 2023

irule or policy to match url and then update pool members port

Good afternoon, looking for some assistance it modifying the following irule we are using. The problem with this irule is it has 100's of pools to send the url to on a differnt port on the server. The servers in hte pool are all the same 5 nodes so I want to instead see if I can use a Data Group to map the uri to the port then with the irule match the uri and update the destination port to this port where all the nodes would then be in 1 server pool instead of the 100's.

Any assistance would be greatly appreciated.

when HTTP_REQUEST {
switch -glob [string tolower [HTTP::path]] {
"/testsprt/data/nop/wbse/search" { pool pool_test.domain.com_34561 }
"/testsprt/data/nop/companycodes" { pool pool_test.domain.com_34561 }
"/testsprt/data/timekeeper/unionmasterdata/contract" { pool pool_test.domain.com_34562 }
"/testsprt/data/timekeeper/unionmasterdata/jobcode" { pool pool_test.domain.com_34562 }
"/testsprt/data/nop/chartofaccounts/glaccount*" { pool pool_test.domain.com_34562 }
"/testsprt/data/timekeeper/timecard/gettimecard" { pool pool_test.domain.com_34563 }
"/testsprt/data/timekeeper/timecard/savetimecard" { pool pool_test.domain.com_34563 }
"/corpsystems/all/nop/cam/approvers/getapprovers" { pool pool_test.domain.com_34577 }
"/corpsystems/vroozi/nop/mm/purchaserequest/create" { pool pool_test.domain.com_34565 }
"/corpsystems/vroozi/nop/mm/purchasestatus/update" { pool pool_test.domain.com_34566 }
"/corpsystems/vroozi/nop/cam/approvers/getapprovers" { pool pool_test.domain.com_34567 }
"/corpsystems/vroozi/nop/cam/approvers/getapprovalhistory" { pool pool_test.domain.com_34567 }
"/corpsystems/vroozi/nop/mm/goodsreceipt/create" { pool pool_test.domain.com_34568 }
"/corpsystems/vroozi/nop/mm/newpurchaserequest/create" { pool pool_test.domain.com_34571 }
"/testsprt/data/registration/status" { pool pool_test.domain.com_34570 }

  • I was thinking of somthing line the following:

    when HTTP_REQUEST {
    #Check to see if the DataGroup matches a URI call
    set svr_port [class match -value -- [HTTP::uri] starts_with dg_testdg]
    #Check to see if a LB decision has already been made for this connection
    if { [LB::server addr] != "" }{
    #Check to see the LB port matches the DataGroup entry
    if {[LB::server port] != $svr_port } {
    #If the port and DataGroup dont match, remove the serverside connection and re-load-balance
    LB::detach
    }
    }
    if {$svr_port eq ""}{
    #DataGroup doesn't match the URI, drop the connection
    #or do something else here
    drop
    }
    }

    when LB_SELECTED {
    #A new LB decision has been made, check to see if the DataGroup has fired
    if {$svr_port != ""}{
    #The DataGroup URI matches, check to see if the ports match
    if {[LB::server port] != $svr_port } {
    #Send the traffic to the DataGroup Port
    LB::detach
    LB::reselect node [LB::server addr] $svr_port
    }
    }
    }


    ltm data-group internal dg_testdg {
    records {
    /testprt/data/sap/chartofaccounts/glaccount\* {
    data 34562
    }
    /testprt/data/nop/companycodes {
    data 34561
    }
    /testprt/data/sap/wbse/search {
    data 34561
    }
    /testprt/data/timekeeper/timecard/gettimecard {
    data 34563
    }
    /testprt/data/timekeeper/unionmasterdata/contract {
    data 34562
    }
    /testprt/data/timekeeper/unionmasterdata/jobcode {
    data 34562
    }
    }
    type string
    }

     

    • Kai_Wilke's avatar
      Kai_Wilke
      Icon for MVP rankMVP

      Hi Richard,

      the LB_SELECTED event is probably not needed to make it work.

      AFAIK you cant select a pool member on a port which is not configured in the pool. You may use the "node" command instead to connect to a IP::Addr of your choice. But keep in mind that this would bypass any LB decissions and health monitor checks for a given port on a given pool member... 

      when CLIENT_ACCEPTED {
      	# Select a pool member based on LB balacing mode
      	set lb_node [lindex [LB::select] 3]
      }
      when HTTP_REQUEST {
      	#Check to see if the DataGroup matches a URI call
      	set svr_port [class match -value -- [HTTP::uri] starts_with dg_testdg]
      	if { $svr_port eq "" } then {
      		#DataGroup doesn't match the URI, drop the connection
      		#or do something else here
      		reject
      		return
      	}
      	#Check to see if a LB decision has already been made for this connection
      	if { [LB::server port] eq $svr_port } then {
      		# Correct port is already selected. Do nothing and return...
      		return
      	} elseif { ( [LB::server port] ne "" ) 
      		   and ( [LB::server port] ne $svr_port ) } then {
      		LB::detach
      	}
      	node $lb_node $svr_port
      }

      But this is somehow a mess. It would be far more elegant to create a pool for each port number, apply proper Health Monitoring to the pools and then used the iRule below...

      when HTTP_REQUEST {
      	#Check to see if the DataGroup matches a URI call
      	set svr_port [class match -value -- [HTTP::uri] starts_with dg_testdg]
      	if { $svr_port eq "" } then {
      		#DataGroup doesn't match the URI, drop the connection
      		#or do something else here
      		reject
      		return
      	}
      	pool "pool_test.domain.com_$svr_port"
      }

      You just have to make sure that the Data-Group port number are alligning with the naming of the pool objects...

      Cheers, Kai

      • richard_polyak's avatar
        richard_polyak
        Icon for Altocumulus rankAltocumulus

        Kal -

        So you still feel using a pool for each port would be best approach? Query do you know how this would work in an AS3 template, as this is how it will be deployed and utilized? I don't mind if that is the approach as I am moving to a self-service model, so they would require to manage the pools themselves, but I am concerned this could overwhelm the BIG-IQ AS3 templete process?

  • richard_polyak I haven't had a chance to test the iRule sadly but it seems like it could work with one exception. In order to match the string and value field you have to create a temp variable and save your string match and then use that variable to compare the value field, your port, to the associated URI path. Would you mind sharing why you are going this route instead of keeping it the way it is?

    • richard_polyak's avatar
      richard_polyak
      Icon for Altocumulus rankAltocumulus

      Pauius -

      Thanks for the reply, reason is this has become very ineffieceint on the F5. Today we have everything on the /Common partion "I am in the process of converting this over to AS3 deployed via BIG-IQ" So the issue of opening the pools in the GUI is extremely slow. This is the issue trying to better utilize the resources on the F5, and since all the nodes in the 100's of pools are the exact same, I don't see any reason to have to have 100's of pools.

      once this is over in it's own partition it shouldn't be an issue. But again if we have to change 1 node, I then need to touch 100's of pools. Again not very effeciant.

      Thx

      Rich

  • I was also considering modifying the original irule to this, but not sure if this would work?

    when HTTP_REQUEST {
    switch -glob [string tolower [HTTP::path]] {
    "/testurl/score/sap/wbse/search" { HTTP::redirect http://[HTTP::host]:34561/[HTTP::uri] }
    "/testurl/score/sap/companycodes" { HTTP::redirect http://[HTTP::host]:34561/[HTTP::uri] }
    "/testurl/score/timekeeper/unionmasterdata/contract*" { HTTP::redirect http://[HTTP::host]:34562/[HTTP::uri] }
    "/testurl/score/timekeeper/unionmasterdata/jobcode*" { HTTP::redirect http://[HTTP::host]:34562/[HTTP::uri] }
    "/testurl/score/sap/chartofaccounts/glaccount*" { HTTP::redirect http://[HTTP::host]:34562/[HTTP::uri] }
    "/testurl/score/timekeeper/timecard/gettimecard*" { HTTP::redirect http://[HTTP::host]:34563/[HTTP::uri] }
    "/testurl/score/timekeeper/timecard/savetimecard*" { HTTP::redirect http://[HTTP::host]:34563/[HTTP::uri] }
    "/testurl/oasis/sportsdb/sportsdetails/getathletesdata" { HTTP::redirect http://[HTTP::host]:34674/[HTTP::uri] }
    "/testurl/oasis/sportsdb/sportsdetails/getathletesimagesdata" { HTTP::redirect http://[HTTP::host]:34674/[HTTP::uri] }
    "/testurl/oasis/sportsdb/sportsdetails/getmedalstandingsdata" { HTTP::redirect http://[HTTP::host]:34674/[HTTP::uri] }
    "/testurl/oasis/sportsdb/sportsdetails/getolymedalstandingsdata" { HTTP::redirect http://[HTTP::host]:34674/[HTTP::uri] }
    "/testurl/oasis/sportsdb/sportsdetails/getresultsdata" { HTTP::redirect http://[HTTP::host]:34674/[HTTP::uri] }
    "/testurl/oasis/sportsdb/sportsdetails/getsportsathletesdata" { HTTP::redirect http://[HTTP::host]:34674/[HTTP::uri] }
    "/v1/widget/visa" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/w2" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/personal" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/address" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/bank" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/w4" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/team" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/profile" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/inbox" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/rsess" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/sickleave" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/documents" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/dependents" { HTTP::redirect http://[HTTP::host]:34646/[HTTP::uri] }
    "/v1/widget/documents" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/dependents" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/saphcm/any/sap/employee/profile" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/address" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/payslip" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/payslips" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/bankdetails" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/payslip/detailedpayslip" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/v2/employee/payslips" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/payslip/detailedpayslip" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/v2/employee/payslips" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/v1/widget/bank" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/sports/sco/obp/onboarding/events/upsert" { HTTP::redirect http://[HTTP::host]:24613/[HTTP::uri] }
    "/sports/sco/obp/onboarding/positions/insert" { HTTP::redirect http://[HTTP::host]:24613/[HTTP::uri] }
    "/sports/sco/obp/onboarding/positionstatus/update" { HTTP::redirect http://[HTTP::host]:24613/[HTTP::uri] }
    "/sports/scocloud/obp/onboarding/events/upsert" { HTTP::redirect http://[HTTP::host]:34645/[HTTP::uri] }
    "/sports/scocloud/obp/onboarding/contact/update" { HTTP::redirect http://[HTTP::host]:34645/[HTTP::uri] }
    "/sports/scocloud/obp/onboarding/positionstatus/update" { HTTP::redirect http://[HTTP::host]:34645/[HTTP::uri] }
    "/sports/scocloud/obp/onboarding/positions/insert" { HTTP::redirect http://[HTTP::host]:34645/[HTTP::uri] }
    "/sports/scocloud/obp/onboardingoly/events/upsert" { HTTP::redirect http://[HTTP::host]:34659/[HTTP::uri] }
    "/sports/scocloud/obp/onboardingoly/positions/insert" { HTTP::redirect http://[HTTP::host]:34659/[HTTP::uri] }
    "/sports/scocloud/obp/onboardingoly/positionstatus/update" { HTTP::redirect http://[HTTP::host]:34659/[HTTP::uri] }
    "/sports/scocloud/obp/onboardingoly/contact/update" { HTTP::redirect http://[HTTP::host]:34659/[HTTP::uri] }
    "/sports/scocloud/obp/onboardingoly/echange/trigger" { HTTP::redirect http://[HTTP::host]:34659/[HTTP::uri] }
    "/sports/scocloud/obp/onboardingoly/address/search" { HTTP::redirect http://[HTTP::host]:34659/[HTTP::uri] }
    "/hrapps/any/sap/employee/profile" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/hrapps/any/sap/employee/address" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/hrapps/any/sap/employee/personal" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/hrapps/any/sap/employee/payslip/formlist" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/w4" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/rsess" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/sickleave" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/sports/trac/trac/techreporte/techreport/search" { HTTP::redirect http://[HTTP::host]:34644/[HTTP::uri] }
    "/sports/trac/trac/techreporte/techreport/insert" { HTTP::redirect http://[HTTP::host]:34644/[HTTP::uri] }
    "/sports/trac/trac/techreporte/techreport/update" { HTTP::redirect http://[HTTP::host]:34644/[HTTP::uri] }
    "/sports/trac/trac/techreporte/user/search" { HTTP::redirect http://[HTTP::host]:34644/[HTTP::uri] }
    "/testurl/score/tk/tpm/timecards/pull" { HTTP::redirect http://[HTTP::host]:34655/[HTTP::uri] }
    "/testurl/score/tk/tpm/timecards/save" { HTTP::redirect http://[HTTP::host]:34655/[HTTP::uri] }
    "/sports/sco/obp/onboarding/contact/update" { HTTP::redirect http://[HTTP::host]:24613/[HTTP::uri] }
    "/v1/widget/comp" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/cost" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/military" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/personnel" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/residence" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/visa" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/w2" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/personal" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/address" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/bank" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/widget/w4" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/team" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/v1/profile" { HTTP::redirect http://[HTTP::host]:34641/[HTTP::uri] }
    "/saphcm/any/sap/employee/compensation" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/defaultcostaccounting" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/dropdown" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/militaryservices" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/myteam" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/pai" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/personnelid" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/residencestatus" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/visatracking" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/w2reprint" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/w4" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/profile" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/bankdetails" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/address" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/payslip" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/payslips" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/ssoload" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/personaldata" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/communicationdata" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/alternatenames" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/additionalpersonaldata" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/additionaladministrativedata" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/socialinsurancespain" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/any/sap/employee/compensation" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/defaultcostaccounting" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/dropdown" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/militaryservices" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/myteam" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/pai" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/personnelid" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/residencestatus" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/visatracking" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/w2reprint" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/w4" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/profile" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/bankdetails" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/address" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/payslip" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/payslips" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/ssoload" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/inbox" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/personaldata" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/communicationdata" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/alternatenames" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/additionalpersonaldata" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/additionaladministrativedata" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/personal/socialinsurancespain" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/hrapps/any/sap/employee/profile" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/hrapps/any/sap/employee/address" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/hrapps/any/sap/employee/personal" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/hrapps/any/sap/employee/payslip/formlist" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/w4" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/rsess" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/sickleave" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/saphcm/any/sap/employee/voe" { HTTP::redirect http://[HTTP::host]:34647/[HTTP::uri] }
    "/corpsystems/sap/any/financial/account/validation" { HTTP::redirect http://[HTTP::host]:34658/[HTTP::uri] }
    "/corpsystems/sap/any/financial/accounts/validation" { HTTP::redirect http://[HTTP::host]:34658/[HTTP::uri] }
    "/corpsystems/sap/any/financial/masterdata/validation" { HTTP::redirect http://[HTTP::host]:34658/[HTTP::uri] }
    "/corpsystems/sap/any/financial/masterdatas/validation" { HTTP::redirect http://[HTTP::host]:34658/[HTTP::uri] }
    "/corpsystems/sap/any/financial/podetails/query" { HTTP::redirect http://[HTTP::host]:34660/[HTTP::uri] }
    "/promoschedule*" { HTTP::redirect http://[HTTP::host]:34653/[HTTP::uri] }
    "/corpsystems/any/sap/territorycode/countrycodes/query" { HTTP::redirect http://[HTTP::host]:34665/[HTTP::uri] }
    "/adsales/cdw/pam/digital/salesdata/trigger" { HTTP::redirect http://[HTTP::host]:34667/[HTTP::uri] }
    "/saphcm/any/sap/employee/voe" { HTTP::redirect http://[HTTP::host]:34643/[HTTP::uri] }
    "/saphcm/sap/etds/employee/usermanager/trigger" { HTTP::redirect http://[HTTP::host]:34670/[HTTP::uri] }
    "/financesupplychain/aqa/sap/finance/invoice/status" { HTTP::redirect http://[HTTP::host]:34671/[HTTP::uri] }
    "/srat/tibco/all/tib/ondemand/global/lookup" { HTTP::redirect http://[HTTP::host]:34580/[HTTP::uri] }
    "/analyticslogs/any/adobe/userdata" { HTTP::redirect http://[HTTP::host]:34673/[HTTP::uri] }
    "/analyticslogs/any/adode/jobstatus" { HTTP::redirect http://[HTTP::host]:34673/[HTTP::uri] }
    "/analyticslogs/any/adobe/skyshowtime/userdata" { HTTP::redirect http://[HTTP::host]:34703/[HTTP::uri] }
    "/analyticslogs/any/adobe/skyshowtime/jobstatus" { HTTP::redirect http://[HTTP::host]:34703/[HTTP::uri] }
    "/engineering/ndi/github/user/report" { HTTP::redirect http://[HTTP::host]:34704/[HTTP::uri] }
    "/campaign/any/adobe/userdata" { HTTP::redirect http://[HTTP::host]:34673/[HTTP::uri] }
    "/mparticle/onetrust/callback" { HTTP::redirect http://[HTTP::host]:34675/[HTTP::uri] }
    "/analyticslogs/any/adobe/ent/userdata" { HTTP::redirect http://[HTTP::host]:34679/[HTTP::uri] }
    "/analyticslogs/any/adobe/ent/jobstatus" { HTTP::redirect http://[HTTP::host]:34679/[HTTP::uri] }
    "/financesupplychain/any/dwh/orderinfo/invoice/fetch" { HTTP::redirect http://[HTTP::host]:34634/[HTTP::uri] }
    "/filment/jv/uphe/mercury/trigger/in5159" { HTTP::redirect http://[HTTP::host]:34682/[HTTP::uri] }
    "/filment/jv/uphe/mercury/trigger/in5021" { HTTP::redirect http://[HTTP::host]:34683/[HTTP::uri] }
    "/filment/jv/uphe/mercury/trigger/in5161" { HTTP::redirect http://[HTTP::host]:34684/[HTTP::uri] }
    "/filment/unify/tibco/filelookup/fetch" { HTTP::redirect http://[HTTP::host]:34687/[HTTP::uri] }
    "/filment/unify/tibco/listfilenames/lookup" { HTTP::redirect http://[HTTP::host]:34687/[HTTP::uri] }
    "/filment/unify/tibco/servicelookup/fetch" { HTTP::redirect http://[HTTP::host]:34687/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i6011/lookup" { HTTP::redirect http://[HTTP::host]:34688/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i6017/lookup" { HTTP::redirect http://[HTTP::host]:34688/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i6012/lookup" { HTTP::redirect http://[HTTP::host]:34688/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i6018/lookup" { HTTP::redirect http://[HTTP::host]:34688/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i6015/lookup" { HTTP::redirect http://[HTTP::host]:34688/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i6016/lookup" { HTTP::redirect http://[HTTP::host]:34688/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i2185/lookup" { HTTP::redirect http://[HTTP::host]:34689/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i2182/lookup" { HTTP::redirect http://[HTTP::host]:34689/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i2188/lookup" { HTTP::redirect http://[HTTP::host]:34689/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i2189/lookup" { HTTP::redirect http://[HTTP::host]:34689/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i2190/lookup" { HTTP::redirect http://[HTTP::host]:34689/[HTTP::uri] }
    "/filment/tibco/salesforce/integration/i2191/lookup" { HTTP::redirect http://[HTTP::host]:34689/[HTTP::uri] }
    "/filment/tibco/unifys3/integration/file/handler" { HTTP::redirect http://[HTTP::host]:34690 /[HTTP::uri] }
    "/filment/tibco/amz/integration/reports/fetch" { HTTP::redirect http://[HTTP::host]:34691/[HTTP::uri] }
    "/saphcm/any/sap/employee/getdetails" { HTTP::redirect http://[HTTP::host]:34685/[HTTP::uri] }
    "/financesupplychain/cp/snap/invoicemanagement/invdetails/fetch" { HTTP::redirect http://[HTTP::host]:34612/[HTTP::uri] }
    "/financesupplychain/cp/snap/invoicemanagement/invdetails/update" { HTTP::redirect http://[HTTP::host]:34612/[HTTP::uri] }
    "/financesupplychain/cp/snap/invoicemanagement/invattachments/update" { HTTP::redirect http://[HTTP::host]:34612/[HTTP::uri] }

     

    default {
    HTTP::redirect http://[HTTP::host]:33333/[HTTP::uri] }


    }
    }