Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 477
  • Last Modified:

SYBASE LOG Information

ASE is installed on UNIX machine but mounted on to different servers.
I want to know where the log in getting dumped.
I tried select @@ERRORLOG and that gives me the path but not the server name.
Could you please let me know if there is any way to find it ?
0
koppcha
Asked:
koppcha
3 Solutions
 
Jan FranekCommented:
As far as I know, ASE can't directly access files on other servers. So @@ERRORLOG should give you valid path on the server that ASE runs on. It can be mounted from other server, but it's OS thing, not ASE thing.

In most UNIXes you can probably use mount command to see paths, that are mounted on external servers. Or just ask your UNIX admin.
0
 
IncisiveOneCommented:
> ASE is installed on UNIX machine but mounted on to different servers.
"mount" is a technical term, an Unix command, so no, that is impossible.  Please identify exactly what you really mean.  Or do you mean "available" on different systems (servers or PCs, they are all Clients because in this context, ASE is the Server) ?

@@errorlog will give you the path to the errorlog file.  Not the transaction log that gets dumped.

Each database has a transaction log (one per db; not one per server).  Since you have no documentation, you will need to inspect the server.  You will need "sa_role", which is similar to admin privileges.   To find the location of the tran log dump
- use  <db_name>
- sp_helpthreshold (confirm that non-LCT thresholds have been set and the name of the sproc that is invoked when a threshold is triggered)
- use sybsystemprocs
- [using whatever tool you use for extract/display and] extract the named threshold proc
- the default proc is "sp_thresholdaction"
- read the code.  Somewhere in there, you should find a "dump tran <db_name> to <path/file_name>"

That will be a local path, not an external path.  (NFS and external paths it may well be, but that is done at the o/s level before ASE is booted, and that is transparent, the result is, the path is local).  On that unix system, as the sybase user, you should be able to:
- ls -ls <path/file_name>

If there is no such proc, the tran log is not getting dumped.  It may be a development database, check:
 - sp_helpdb <db_name>
 - look for "truncate_log_on_checkpoint" option being set
 - post back here
 
 Cheers
0
 
BenSladeCommented:
Re:  "ASE is installed on UNIX machine but mounted on to different servers."

Do you mean the ASE executables are available on a network shared filesystem which is mounted to different Unix machines?  Ie., the ASE server runs on a Unix machine and the executables being run come from files on the shared file system?

Re: "I want to know where the log in getting dumped."

Ie, the Unix box where the ASE server is running?   Because ASE writes out it's error log onto what it thinks is a local file on the box where it's running.

Re: "I tried select @@ERRORLOG and that gives me the path but not the server name.
Could you please let me know if there is any way to find it ?"

Assuming you want to find the Unix host where the ASE server is running, you can't get that from inside the ASE server.  You have to get that out of the interfaces file.

Ben
0

Featured Post

Vote for the Most Valuable Expert

It’s time to recognize experts that go above and beyond with helpful solutions and engagement on site. Choose from the top experts in the Hall of Fame or on the right rail of your favorite topic page. Look for the blue “Nominate” button on their profile to vote.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now